ほぼ1年前、本連載の第167回 で統合開発環境であるEclipseを取り上げました。当時Ubuntu11.04で利用可能なEclipseのバージョンは3.5でしたが、季節が一巡した現在は、Ubuntu12.04でEclipse 3.7を利用可能です。Eclipse本体のバージョンアップもさることながら、Git拡張機能に関する変化がありました。そこで今回はEclipseでGitを使う方法をお届けします。
Egitの導入
Gitに関しては本連載の第212回 で、Ubuntuで利用できるさまざまなクライアントソフトウェアを紹介しました。EclipseをこのようなGitのクライアントとして使うための拡張機能がEgitです。
Egitに限らず、Eclipseは独自の仕組みによって拡張機能をインストールすることができます。しかし、ここで考慮するべきなのは「Ubuntuの」パッケージ管理システムです。
Ubuntuのソフトウェアはパッケージ管理システムにより、インターネットサイト上のリポジトリから提供されています。リポジトリに収録されているソフトウェアの種類はUbuntuのリリースの度に変わり、これまでは提供されていなかったソフトウェアが新たに提供されることがあります。
Eclipse関連のパッケージに関しても同じことが言え、拡張機能のパッケージの提供が新しく開始されることがあります。前回記事、すなわちUbuntu 10.04ではリモートシステムエクスプローラー拡張機能のパッケージeclipse-rse の提供が開始されました。今回のUbuntu 12.04では、Gitを扱う拡張機能であるeclipse-egit とeclipse-jgit のパッケージの提供が始まっています。
このような拡張機能をEclipseの仕組みでインストールするか、それともUbuntuのパッケージ管理システムでインストールするかはユーザー次第となりますが、後者の方が圧倒的に簡単です。そこで今回はUbuntuソフトウェアセンターでパッケージ「eclipse-egit」を検索し、インストールすることにしましょう。
図1 Ubuntuソフトウェアセンターで「eclipse-egit」パッケージをインストールする
Egitの使い方
パッケージをインストールすれば、もうEgitが使用可能です。Gitのリポジトリの操作をするには「Git Repository」パースペクティブを開きます。
図2 Gitパースペクティブ
パースペクティブを開くと左に「Gitリポジトリー」ビューがありますので、ビューの右上の▼をクリックしリポジトリに関する操作を「Add Repository」「 Clone a Repository」「 Create a Repository」の3つから選択します。
図3 Gitリポジトリビューのメニュー
今回はALSAプロジェクトのGitリポジトリ のひとつをクローンしてみました。リポジトリをクローンするために「Clone a Repository」を選択します。次の「Gitリポジトリーの複製」ウィンドウで、リポジトリに接続するために必要なのURLなどの情報を入力して下さい。URLにはGit以外のプロトコルも指定できますが、今回はせっかくなのでGitプロトコルを使ってみましょう。入力項目が十分であれば、「 次へ」ボタンを押すとリモートブランチの一覧を取得して表示してくれます。
図4 リモートブランチの表示
使いたいリモートブランチをクリックして「次へ」を押すとチェックアウトが行われ、リモートブランチの内容がローカルブランチにコピーされます。なお、ローカルブランチのデフォルトの場所はユーザーのホームディレクトリのgitディレクトリ、すなわち「~/git」となっています。この場所はEclipseの[ウィンドウ] -[ 設定]で変更可能です。
なお、git pullやgit pushなどの操作のうち、公開鍵認証を必要とする操作は常に失敗します。Ubuntu 12.04で利用できるEclipse 3.7.2はAESによって暗号化された秘密鍵をうまく復号できないためです[1] 。この点に関しては端末でgitコマンドを実行して併用するか、暗号化方法を変更した秘密鍵を用意して登録することで可能となります。秘密鍵に対する操作は思わぬトラブルの原因にもなりかねないので、慣れていない人はgitコマンドを覚えてしまいましょう。
プロジェクトとしてインポート
こうして作成したローカルリポジトリは、プロジェクトとしてインポートすることで、Eclipseの他のパースペクティブでも利用可能となります。インポートするには、別なパースペクティブに切り替えた後、プロジェクトエクスプローラーの右クリックメニューからインポートを選択します。
図5 右クリックメニューからインポートを選択
次に[Git] -[ Project from Git]を選択して先に進み、プロジェクトとしてインポートしたいgitリポジトリを選択してください。
図6 インポートウィンドウで「Project From Git」を選択
この操作は通常のインポートとは異なり、ディレクトリの内容を複製しません。そのため、Eclipse上でプロジェクトに対して行った操作は、gitリポジトリに直接反映されます。
変更のステージングやコミットなど、Gitの主要な操作は右クリックメニューの「チーム」から行います。
図7 「チーム」メニュー
「コミット」を選択するとコミットウィンドウが開きます。
図8 コミットウィンドウ
まとめ
Egitを使うとGitの主だった操作をグラフィカルに行うことができます。しかしながら細かな操作はやはり端末からコマンドラインで行うのが便利ですので、併用していくことをおすすめします。