GitHub+Eclipseを使ったプロジェクトのはじめ方

著名開発者もすなるgithubといふものを、私もしてみむとてするなり - Archit!!の続きのようなもの。
GitHubEclipseを使ってプロジェクトを始めるためのメモ。最近のEclipseは標準でEGitが入っているので、Eclipse側での追加インストールなどは不要。

初期作業(リポジトリ作成からローカル環境構築)

  1. GitHubで新しいリポジトリを作成する(たとえばhogeとする)。
    自動的にGitHubリポジトリURLを発行してくれる。例えば、
    https://github.com/architshin/hoge.git
    のように。
  2. Eclipseでローカルリポジトリを用意する。
    1. Gitリポジトリエクスプローラパースペクティブで「Gitリポジトリを複製し、このビューへ追加」をクリック。
    2. 出てきたダイアログの
      1. 「ロケーション」の「URI」に上記1のURLをペースト。「ホスト」や「リポジトリパス」が自動的に入力される。
      2. 「接続」の「プロトコル」が「https」になっていることを確認。
      3. ユーザーとパスワードにGitHubにログインするためのIDとパスワードを入力。必要に応じて「セキュアストアに保管」にチェックを入れる。
      4. 「次へ」をクリック。
    3. 上記入力に問題がなければ、ダイアログが「ブランチ選択」画面に遷移し「ソースGitリポジトリは空です」というメッセージが出ている。そのまま「次へ」をクリック。
    4. ダイアログが「ローカルの宛先」画面に遷移する。「宛先」の「ディレクトリ」を適宜変更する。例えば、今から作成するプロジェクトがWEBサイトやPHPアプリなどの場合はApacheのドキュメントルート内に保管したほうがいいだろう。
  3. Eclipseでプロジェクトの作成。
    JavaでもAptanaでもPHPでも、作成するプロジェクトに応じてそのパースペクティブに変更し、それぞれに応じた新規プロジェクトを作成する。
    1. プロジェクト名は任意のものを入力。
    2. プロジェクトのロケーションをデフォルトではなく、上記2-4で指定したディレクトリを指定する。

これで、Eclipse内にプロジェクトが作られる。これ以降は次の通常作業に移る。

通常作業

  1. プロジェクト内に必要ファイルを追加。これは、通常のEclipseでの操作。
  2. Eclipse上で、プロジェクトを右クリックして
    1. チーム > コミット
      Gitはコミットコメントが必須なので何か入力する。
    2. チーム > プッシュ
      この際、「Please provide HTTP authentication password」として、ユーザー(Username)とパスワード(Password)を入力するダイアログがそれぞれ出てくる場合があるが、その場合はGitHubログイン用のIDとパスワードを入力する。*1
  3. 上記を繰り返す。

別マシンのEclipseでの環境構築

上記「初期作業」の2「Eclipseでローカルリポジトリを用意する。」とほぼ同じ。

  1. Gitリポジトリエクスプローラパースペクティブで「Gitリポジトリを複製し、このビューへ追加」をクリック。
  2. 出てきたダイアログの
    1. 「ロケーション」の「URI」にリポジトリのURLをペースト。例えば、先のhogeプロジェクトなら、
      https://github.com/architshin/hoge.git
      となる。「ホスト」や「リポジトリパス」が自動的に入力される。
    2. 「接続」の「プロトコル」が「https」になっていることを確認。
    3. ユーザーとパスワードにGitHubにログインするためのIDとパスワードを入力。必要に応じて「セキュアストアに保管」にチェックを入れる。
    4. 「次へ」をクリック。
  3. 上記入力に問題がなければ、ダイアログが「ブランチ選択」画面に遷移する。今回は、すでにソースがあるはずなので、ブランチのリストが表示される。master、あるいは必要なら別のブランチをチェックし、「次へ」をクリック。
  4. ダイアログが「ローカルの宛先」画面に遷移する。
    1. 「宛先」の「ディレクトリ」を適宜変更する。これも、初期作業同様、今から作成するプロジェクトがWEBサイトやPHPアプリなどの場合はApacheのドキュメントルート内に保管したほうがいいだろう。
    2. 初期作業と違い、「Import all existing projects after clone finishes」にチェックを入れる。あとからプロジェクトのインポートもできるが、ここでやっておくと楽。

これで、Eclipse内にプロジェクトがインポートされているので、通常作業に移る。

プル

別のマシンでリポジトリ内容を更新した場合、その変更を自マシンに反映させるにはプルを行えばいい*2。その際、HTTP認証の関係上、Gitリポジトリエクスプローラパースペクティブで行ったほうがいい。

*1:どうも、プッシュは各プロジェクトのパースペクティブのプロジェクトエクスプローラー上で行うよりはGitリポジトリエクスプローラパースペクティブで行ったほうがいい。その場合は、保管されたユーザー名とパスワードを使ってHTTP認証を自動で行ってくれる

*2:プルとフェッチの違いは「うわっ…私のバージョン管理、ダメ過ぎ…?」を解決するGitの使い方“超”入門 (3/3):かんばん!〜もし女子高生がRedmineでスクラム開発をしたら(5) - @ITがわかりやすい