2011年6月21日火曜日

Commit to github with Egit(Eclipse plugin) on Ubuntu10.10

備忘録

環境
・Ubuntu 10.10
・Eclipse 3.5
・Egit 0.4.9

gitはインストール済み。
Eclipseは日本語化してません。

■ gitの設定(必須ではない)
$ git config --global user.name "yourname"
$ git config --global user.email "your.email@address.com"
この設定は、Eclipseの起動時に(Egitがインストール済みなら)読み込まれて、Egit上でコミットする場合も使用される。
Eclipse起動前に変更しないと、反映されない気がする(多分)。

■ ssh-keygenコマンドで公開鍵作成
パスフレーズとか聞かれる
id_rsaとid_rsa.pubの2つのファイルが生成されるので、~/.ssh/に移動しておく。
id_rsa.pubの中身をコピペして、githubのAccount Settings > SSH Public Keysで追加しておく。
titleは何でもいいらしいので、適当に。

■ Egit(Eclipseのgitクライアントプラグイン)のインストール
update-site → http://www.jgit.org/update-site/

■ Eclipse上でgitのリポジトリ生成
パッケージエクスプローラで、対象のプロジェクトのコンテキストメニュー > Team > Share Project
ダイアログでGitを選択(多分EclipseにデフォルトでCVSが入ってるので、CVSかgitかどちらを使うか必ず聞かれる気がする)
次のダイアログでリストから対象のプロジェクトを選択 > リスト下に選択したものが表示されるので「Create」ボタン押下 > finishボタン押下

■ プロジェクトのファイルをstage
リポジトリを生成したプロジェクト下の、コミットしたいファイルのコンテキストメニュー > Team > Add to Version Control

■ ファイルのローカルコミット
コンテキストメニュー > Team > Commit...

■ リモートリポジトリの生成
githubでリポジトリを生成しておく、リポジトリのURIが表示された事を確認する。
そのURIはリモートリポジトリへのコミット時に使用する。↓

■ リモートリポジトリ(github)へのコミット
プロジェクトのコンテキストメニュー > Team > Push to...
URIにリモートリポジトリのURIを入力。
ただし、Protocolはgit+sshに変える。
Userは「git」
Passwordは空のままで良い。
以下のスクリーンショットを参考に。
Nextボタン押下
公開鍵のfingerprintとか、~/.ssh/known_hostsファイルを作っていか、とか確認される
パスフレーズを求められるので入力。
次のダイアログでコミット(Push)先の設定をして、Next/Finish

次回以降も、同じ手順で。

□ 問題
リポジトリのURIが保持されてくれないので、仕方なくコミットの度にgithubのリポジトリ情報ページからコピペしてるけど、他の人はどうなの?

□ パッケージエクスプローラのフィルタ設定
パッケージエクスプローラは初期設定で、いくつかのファイルを表示しない設定になっている。(ドットファイルとか)
それらを表示しstageしたいなら、パッケージエクスプローラペインの右上の▽からFiltersを選択し、ダイアログでフィルタ設定を変更する。


□ 参考
http://womo.nconc.net/2010/03/04/github
http://blog.katsuma.tv/2009/02/first_github.html
http://d.hatena.ne.jp/keita_yamaguchi/20080409/1207752188