Gitとは?

Gitは分散型のバージョン管理システムのひとつで、元々はLinuxカーネル開発のためにLinus Torvalds氏が開発したものだが、現在はさまざまなオープンソースプロジェクトで使用されている。

GitはSubversionやCVSといった従来のバージョン管理システムと比較して「オフライン環境でも利用できる」「マージ機能が強力なためブランチが気軽に使える」など多くのメリットがある。反面、ローカルリポジトリとリモートリポジトリを意識して操作を行う必要があるなど、覚えることが多く使いこなすのが難しいという側面があるのも事実だ。

とりわけGitのメリットであるブランチを多用する場合、ブランチの切り替えやマージなどの操作も多用することになるが、これらをコマンドラインの操作だけで行うのはやはり難易度が高い。使いやすいGUIフロントエンドがあればGitを使いこなすことも容易になるのではないだろうか。

今回はGitを利用する際に便利なGUIフロントエンドの中から代表的なものを紹介する。

マルチプラットフォームで動作する「git-gui」

git-guiはTcl/Tkで作られた簡易的なGUIフロントエンドだ。それほど使いやすいユーザインタフェースとは言い難いが、WindowsやMacでも利用することができ、なによりGitに標準で付属しているという点が大きい。コマンドライン中心でGitを利用するが、ログなどをGUIでわかりやすく参照したいというような用途にはぴったりのツールといえる。

図1 git-gui

マルチプラットフォーム対応のGitクライアントとしてはこのほかにgit-colaやQGit viewer[http://sourceforge.net/projects/qgit/]などがある。

また、MacOS X専用のGitクライアントとしてGitX[http://gitx.frim.nl/]がある。MacOS XのAquaインターフェース、Quick Lookとの統合など、MacOS Xに特化した作り込みが行われているのが特徴だ。

Windowsなら「TortoiseGit」で決まり?

TortoiseGitはWindows専用のGitクライアントで、TortoiseSVNなどと同じようにエクスプローラーの右クリックメニューからGitの操作を行うことができるようになるというものだ。動作にはTortoiseGit本体に加え、msysgitというWindows向けのGitのバイナリディストリビューションが必要となる。また、TortoiseGit日本語言語ファイル作成プロジェクトで配布されている日本語化ファイルでUIを日本語化することが可能だ。

図2 TortoiseGit

エクスプローラーに統合されているため非常に扱いやすく、完成度も高い。WindowsでGitを利用するのであれば最有力のGUIフロントエンドといえるだろう。

EclipseのGitプラグイン「EGit」

EGitはEclipse上からGitを利用するためのプラグインだ。本連載の第52回でも取り上げているので詳細についてはそちらを参照してほしい。JGitというJavaによるGitのクライアントライブラリを含んでおり、別途Gitをインストールしなくても動作するのが特徴だ。

図3 EGit

EGitはまだそれほど完成度が高い状態とはいえないものの、現在Eclipse.orgのEclipse Technology Projectでインキュベーション中だ。将来的にはEclipseが標準でGitをサポートする日がやってくるかもしれない。

「gitweb」でWebブラウザからGitリポジトリを閲覧

gitwebはGitリポジトリの内容をWebブラウザから閲覧するためのGGIだ。GUIフロントエンドというわけではないが、チーム開発でGitを利用する際にリモートリポジトリを手軽に参照できるよう設置しておくと便利だ。

図4 gitwebt

まとめ

本稿で紹介したとおり、GitのGUIフロントエンドにはさまざまなものがあり、中にはTortoiseGitのように非常に完成度の高いものも存在する。これらのツールを活用することでGitをより活用することができるはずだ。

分散バージョン管理システムというと敷居が高いが、ローカルリポジトリを作成してローカルPC上でのファイルの履歴管理に使用することもできるので、まずはそういった用途から使い始めてみるのもいいだろう。