1. ホーム
  2. git

[解決済み] マージ後のブランチをどうするか

2022-03-23 19:45:11

質問

2つのブランチがありました。 masterbranch1 . をマージしたところ branch1 に戻す。 master で、そのブランチは終了です。削除したほうがいいのでしょうか、それともそのままにしておいたほうがいいのでしょうか?削除してもデータが失われることはないのでしょうか?

解決方法は?

マージ後、ブランチを削除しても大丈夫ですか?

git branch -d branch1

さらに、git はブランチをまだ完全にマージしていないと判断すると警告を発します (そしてブランチの削除を拒否します)。ブランチを強制的に削除した場合 ( git branch -D のように、まだ完全にマージされていないコミットを取り戻すには、いくつかのトリックを行う必要があります (以下を参照)。

しかし、ブランチを残しておく理由もあります。たとえば、機能ブランチの場合、その機能に関するバグフィックスをそのブランチの中で行えるようにしたいと思うかもしれません。

リモートホスト上のブランチも削除したい場合は、それが可能です。

git push origin :branch1

これは、リモートのブランチを強制的に削除します (チェックアウト済みのリポジトリには影響しませんし、プッシュアクセス権を持つ人が再プッシュしたり作成したりするのを妨げることもありません)。


git reflog は、最近チェックアウトされたリビジョンを表示します。最近のリポジトリ履歴でチェックアウトされたブランチもそこに表示されます。それはさておき git fsck は、gitでコミットロスが発生した場合に選択するツールになります。