ブランチの作成/削除
ブランチの作成は、[Branch]ボタンをクリックします。ブランチ作成ダイアログが表示されます(図10)。[New Branch]タブを選択し、[New Branch]テキストに、新規作成するブランチ名を入力します。引き続き作成したブランチで作業する場合は、[Checkout New Branch]チェックボックスをオンにして、[Create Branch]ボタンを押せば完了です。
ブランチの削除は、[Delete Branches]タブから、削除したいブランチを選択し、削除することができます。
リモートブランチの切り替え/作成
ツールバーの[Checkout]ボタンをクリックします。初回は、リモートブランチに対応するローカルブランチが作成されていないため、チェックアウトダイアログの[Checkout New Branch]を選択してブランチの作成も行います。[Checkout remote branch]リストに、リモートブランチ一覧が表示されるので、任意のブランチを選択し[OK]ボタンをクリックすれば切り替えが完了します。
新たにリモートブランチを作成する場合は、前回説明した手順と同様にローカルブランチを作成してから、リモートリポジトリに新しいブランチをプッシュします。プッシュ操作は、次節で説明する手順で実施できます。
プッシュ操作
フェッチや、プッシュ/プルについては特に注意する操作はありません。リモートリポジトリとの差が発生すると、Pushアイコンやツリーの部分に、未プッシュのコミットがあることが表示されます。
プル/フェッチ/マージ操作
以下は、フェッチ操作後にマージ操作を行おうとしている図です(図13)。フェッチ操作後にリモートリポジトリのコミットが進んでいる状態になると、Pullアイコンの部分にマークが表示されます。このまま、[Pull]ボタンをクリックしてマージすることもできますし、[Merge]ボタンを押して、どこのコミットをマージするか選択しつつ操作することもできます。
競合の解決
前回も説明したとおり、同一ファイルに修正があった場合などは競合が発生し、手動でマージする必要があります。競合が発生した場合は、その旨がアイコンで示されます。以下では、Program.csファイルに競合があったことが分かります(図14)。
競合を解決するために、Program.csのコンテキストメニューから、[Resolve Conflicts]-[Launch External Merge Tools]を起動します。Git Extensionsがインストールされていれば、KDiff3が起動するでしょう。適宜競合を修正したら、コミットおよびプッシュ操作を行えば完了です。
修正を取り消す
未コミット修正は、[Discard]ボタンをクリックすると修正内容を破棄して元に戻すことができます。修正中のファイル一覧が表示されるため、元に戻したいファイルのチェックボックスを選択してから、[Discard changes]ボタンをクリックします。
修正ファイルの状態が、ステージングされていても、いなくても同じように取り消すことができます。
コミット済みの修正を取り消す場合は、履歴グラフから行います。戻したい地点のコミットログを選択し、コンテキストメニューから[Reset current branch to this commit]を選択します。モードの選択が表示されますが、[Hard]を選択すれば作業フォルダ含めて、その時点の内容に戻ります。
まとめ
やや早足ではありましたが、SourceTreeを使いGitリポジトリを操作する方法を解説してきました。本稿執筆時点(Windows版バージョン 1.1.0.0)では、何度かツールが強制終了する場面も見受けられたので、メニューの日本語化とともに、今後の対応が望まれます。とはいえ、比較的安定した利用ができていたので、通常利用には問題ないでしょう。
これをもってGit入門の連載は終了です。繰り返しになりますが、GUIだからといって、基本を理解せずGitリポジトリが操作できるわけではありません。Gitの概念や基本の理解がGitを使いこなしていく上での近道かと思います。






