Atlassian SourceTreeとは?

2013年3月、Atlassian社からSourceTreeのWindows版がリリースされた。

SourceTreeは、もともとJIRAやBitBucketなどで有名なAtlassian社が、Mac用に提供していたGit/MecurialのGUIクライアントだ。GitやMercurialといった分散型のバージョン管理システムは、Subversionなどの中央管理型のバージョン管理システムと比較してどうしても操作が煩雑になりがちだが、SourceTreeはわかりやすいユーザインタフェースと、上級者でも満足できる詳細な操作を両立させていることから高い人気を得ている。

今回のリリースで、この強力なGitクライアントをようやくWindows環境でも利用できるようになったわけだ。本稿ではこのWindows版SourceTreeの実力を探ってみたい。

SourceTreeのインストール

SourceTreeは、こちらからWindows用のインストーラをダウンロードできる。インストーラは必要なファイルをインターネット経由でダウンロードするため、インストール時はインターネットに接続している必要があることに注意して欲しい。インストール完了後に、コミット時に使用するユーザ情報などを入力するダイアログが表示されるので設定しておこう。

図1 : インストール後の初期設定

なお、SourceTreeはシステム上にインストールされているGitもしくはSourceTree自身に組み込まれているGitのいずれかを使用する。どちらを使用するかは「Tools」メニューの「Options」で表示される設定ダイアログの「Git」タブで変更できる。

図2 : Gitに関する設定

SourceTreeを使ってみよう

SourceTreeのメイン画面では、左側にリポジトリの一覧が表示され、各リポジトリの情報はタブで切り替えて表示することができる。コミット履歴の一覧はブランチやマージの様子がグラフ表示され、コミットを選択するとコミットログやそのコミットでの変更内容がグラフィカルに表示される。

図3 : SourceTreeのメイン画面

コミット履歴の一覧からは任意のコミットを選択してチェックアウトしたり、ブランチを切ったりすることも可能だ。ファイルを変更すると履歴の最上段に「Uncommitted Changes」と表示され、ここで各ファイルの差分を確認してコミットまたは取り消しを行うことができる。このあたりは他の一般的なGitフロントエンドと同様の使い勝手と考えていいだろう。ただし、最近のPCはワイド画面のものが多く、ディスプレイの横幅を活かしたレイアウトとなっている点は大いに評価できる。

SourceTreeの有り難みを実感できるのはリモートリポジトリとのプル、プッシュやブランチを扱う場合だ。

例えばGitでは、ローカルで作成したブランチをプッシュする場合に、リモート側のブランチを明示的に指定する必要がある。一方のSourceTreeの場合は、プッシュ時にチェックボックスにチェックを入れるだけでローカルブランチと同じ名前でプッシュすることができる。また、タグについても明示的に指定してプッシュする必要があるが、SourceTreeではこれを自動的に行ってくれるオプションがデフォルトで有効になっている。

図4 : ブランチのプッシュ

Gitは柔軟性の高さが特徴だが、その反面このように日常的に行うであろう操作も煩雑になりがちだ。SourceTreeはそういった部分をうまくカバーしており、多くのケースでユーザが余計なストレスを感じずにGitを利用できるように工夫されている。

まとめ

Windows上でのGitのGUIクライアントはこれまでもTortoiseGitかGithub for Windows、さらにはEclipseなどのIDE上から利用可能なプラグインなど様々な選択肢があった。しかしこれらはGitに慣れていないと使いにくかったり、逆にGitの複雑さを隠蔽しすぎて細かい操作に支障があったりなど、帯に短したすきに長しという感があった。

SourceTreeは基本的な操作はわかりやすく、複雑な操作も可能という絶妙な使い勝手を実現しているといえる。Windows上でGitを使う場合にはぜひ一度SourceTreeを試してみて欲しい。

なお、Windows版のSourceTreeは現時点ではMac版と異なりMercurialには対応していないが、将来的には対応予定とのことだ。Mercurialユーザの方はいましばしお待ちいただきたい。