【Sourcetree】ブランチ削除で怒られた時の対処
はじめに
Sourcetreeでブランチの削除を行うと、以下のように「Cannot delete branch・・・」という内容のエラーが出たり、
「The branch ・・・ is not fully merged. If you are sure you want to delete it・・・」という内容のエラーが出て、ブランチの削除ができない場合があると思います。
今回はそれぞれのエラーでの対処内容について書きたいと思います。
環境
この記事はSourcetree3.4.6での確認内容となります。
Sourcetree3.4.6は以下の場所から取得できます。
www.sourcetreeapp.com
なぜこのようなエラーがでるのか?
Cannot delete branchの場合
このケースはカレントブランチを削除しようとしていることが原因で怒られています。
対処には以下の1パターンが考えられます。
is not fully mergedの場合
このケースは削除しようとしているブランチが他のどのブランチにもマージしていないことが原因で怒られています。
対処には以下の2パターンが考えられます。
対処
Cannot delete branchの場合
[パターン1]カレントブランチを削除するブランチ以外に変更してからブランチを削除する
まずはツリー上で削除対象ブランチ以外のブランチ名をダブルクリックしてカレントブランチを切り替えます。
切り替わった後、削除ブランチを削除しましょう。
今度はエラー出ずに削除できるはずです。
is not fully mergedの場合
[パターン1]削除しようとしているブランチを他のブランチにマージをした後、ブランチを削除する
マージボタンを押します。
削除対象ブランチの最新コミットを選択し、OKボタンを押しましょう。
これで他のブランチにマージできました。
削除ブランチを削除しましょう。
今度はエラー出ずに削除できるはずです。
[パターン2]ブランチを強制削除する
ブランチを削除する際に出るダイアログで「削除を強行」にチェックを付けた状態でOKボタンを押します。
するとエラー出ずに削除できます。
おわりに
これらの対処法でブランチを削除できましたでしょうか?
他のブランチに確実にマージしたことを確認してからブランチを削除すると安全だと思います。