神戸大学大学院経済学研究科講師 山﨑潤一

目次

話の前提

最初のセットアップ(1-2時間程度かかるかも)

  1. Docker Desktopをマシンにインストールする

    1. windowsの場合はwsl2をインストールしないといけないらしい。ただwindows 11では便利にインストールできるらしい。この辺りの記事を参照。
  2. VSCodeをマシンにインストールし、Remote Developmentのextensionをインストールする

    1. ついでにVScodeのdockerのextensionも入れておくといい
  3. Gitをマシンにインストールし、GitHubのアカウントを取得する

  4. GitHubの画面右上からsettings→Developers Settings→Personal Access TokensからTokens (classic)を選択し、適当な名前をnoteに書き(access_githubなど)expirationをno expirationに設定、repoだけにチェックを入れ、Generate Tokenする。これでGitHubとの接続時に使うパスワードが得られる。後で使うので手元のテキストファイルにメモしておく。これでrepositoryの内容を書き込むアクセス権のためのパスワードとして使える。複数台所持していても同じパスワードで大丈夫。一回しか表示されないので、忘れた場合は消して再度作成する。2台目に入力する際に忘れていても、追加で作成して違うパスワードを入れても良い。ただしパスワードの管理は厳重に(ネット上に上げないこと)!

    Screen Shot 2023-01-28 at 21.36.31.png

  5. (管理者向け)

    1. テンプレートとなるリポジトリyamasaki/r-latex-researchenvのページに行き、緑色のUse This Templateボタンをクリック、Create a new repositoryを選択。ここで自分の新しいプロジェクト名などを設定し新しくリポジトリを作成。リポジトリはprivateにしておく。include all branchesはチェックなしで基本的にok。

      Screen Shot 2023-01-28 at 22.03.23.png

    2. aで作成したリポジトリから、code→HTTPS→アドレスの右側に出る二重四角のボタンを押してアドレスをコピー

      Screen Shot 2023-01-28 at 21.39.53.png

    3. その後、ターミナル画面でGit関係のファイルをおきたい場所(適宜documents/gitなどとすると良いかも)まで移動してから、git clone さっきコピーしたアドレスとうつ。するとユーザー名とパスワードを求められるので、tokenでのログインを選択し、GitHubでのユーザー名と上で発行したpersonal tokenをパスワードに入力する。そうするとGitHubから手元にファイルがダウンロードされる。

    4. 最低限必要なコードなどを適宜追加して、ターミナルでdocument/git/デポジトリの名前にcdする。そこから以下のようにコミット(記録)、GitHubにプッシュ(GitHubサーバーにローカルの内容を同期)する。ただし、初めてgit pushする際には、ユーザー名とstep4で作ったトークンをパスワードとして入力する必要がある。

      git add . # 変更内容を全てコミット(記録)対象にする
      git commit -m "initial commit" # コミット
      git push # コミット内容をGitHub側に同期させる
      
      1. 必要であればgit add .する前にフォルダ構造や.gitignoreを調整する。.gitignoreはgitの管理から外すファイルを指定するファイル。texの不必要なファイルやmacが勝手に作成するフォルダなどのメタ情報が入った.DS_storeなどがあらかじめ管理外として指定されています。デフォルトではdataフォルダの内容は全て管理外(この記事を参考に設定されている)。
      2. containerの中でのターミナルからgit pushするためには、ここを参考にして設定を行う。macの場合、$HOME/.ssh/ファイル名で良いはず。
    5. 必要な生データをdropboxなどでチームメンバーに共有する。その入手方法(dropboxのリンクなど)をreadmeに記載するなどしてプロジェクトメンバーに知らせる。

  6. 作業者はプロジェクトリポジトリを5-b,5-cと同じ手順で手元にcloneし、生データをdropboxなどから手元のリポジトリの適切な場所に追加する(通常data/rawdataのような場所に置くことが多い、適宜管理者の指示を仰いだりreadmeを確認する)。