エンジニア

【Git】SourceTreeでのリベース手順

投稿日:2014年10月31日 更新日:

はじめに

今回の記事は大橋が担当します。よろしくお願いします。

 さて、GitクライアントとしてSourceTreeを使っていて、
あるとき、作業ブランチにマスターブランチの更新を取り込もうとリベースしたら
コンフリクトしたことがありました。
リベース時にコンフリクトした場合の対処手順の情報はWeb上にいっぱいありましたが、
その多くがGitコマンドでの解説で、SourceTree上での操作がよくわからなかったので、
今回は、SourceTreeでのリベース手順を解説したいと思います。

 SourceTreeでリベースしたらコンフリクトしてよくわかんない状況になった、
といった状況の助けになれば幸い。

 

状況

想定する状況として、

・マスターブランチ(master)から作業ブランチ(test)を切って、作業ブランチに変更を加えた
・その後、マスターブランチにも変更が加えられた
・作業ブランチをマスターブランチのHEADにリベースして、masterの変更を取り込みたい

を考えます。

SourceTree_1

 

手順

1. 作業ブランチをチェックアウト

リベースの準備として、作業ブランチをチェックアウトしている状態にします。

2. マスターブランチにリベース

マスターブランチを右クリックして、メニューから「現在の変更を’master'にリベース」を選びます。

SourceTree_2

すると、確認ダイアログが出るので、「OK」をクリック。

SourceTree_3

これで、リベース処理が行われます。

3. コンフリクトを解決

もしコンフリクトした場合は、コンフリクトを知らせるダイアログが出るので、
まずは「OK」をクリックして閉じます。

SourceTree_4

ダイアログを閉じるとコンフリクトしたファイルのリストが出ているはずです。
どうやらこの状況のとき、どのブランチもチェックアウトしていない状態になっているようです。

SourceTree_5

該当ファイルのコンフリクトを解決します。
コンフリクトを解決したとき、特にコミットなどは必要ありません。

SourceTree_6

4. リベースの再開

コンフリクトを解決したら、[操作]-[リベースを続ける]を選択します。

SourceTree_7

確認ダイアログが出るので、すかさず「OK」ボタンをクリック。

SourceTree_8

コンフリクトしなければ、無事リベースが完了します。
もし再度コンフリクトしたら、コンフリクト解決の手順を繰り返します。

SourceTree_9

 

おわり

以上、SourceTreeでのリベース手順になります。

採用情報

ワンダープラネットでは、一緒に働く仲間を幅広い職種で募集しております。

-エンジニア
-

© WonderPlanet Inc.