私のラップトップと職場、そして自宅のデスクトップの両方で、6 つの異なるブランチとマージで数週間働いた後、私の歴史は少し複雑になりました。たとえば、フェッチを行った後、master を origin/master とマージしました。ここで、git show-branches を実行すると、出力は次のようになります。
! 【ログイン】ドメイン名を変更しました。 ! [マスター] リモート ブランチ 'origin/master' をマージします ! [migrate-1.9] Heroku での 1.9.1 への移行 ! [rebase-master] リモート ブランチ 'origin/master' をマージします ---- - - [master] リモート ブランチ 'origin/master' をマージします + + [master^2] 少し再配置とクリーンアップ。 - - [master^2^] ブランチ 'rpx-login' をマージします + + [master^2^^2] 一部のデバッグ ログをコメントアウトしました。 + + [master^2^^2^] モンキー パッチを適用した Rack::Request#ip + + [master^2^^2~2] 各リクエストをログにダンプ ....
これを git rebase でクリーンアップしたいと思います。この目的のために新しいブランチ rebase-master を作成し、このブランチで git rebase <common-ancestor> を試しました。ただし、多くの競合を解決する必要があり、ブランチ rebase-master の最終結果は、既にテスト済みで動作する master の対応するバージョンと一致しなくなりました!
どこかでこれに対する解決策を見たと思ったのですが、もう見つけることができません。誰もこれを行う方法を知っていますか? それとも、既にマージした不要なブランチの削除を開始すると、これらの複雑な参照名はなくなりますか?
私はこのプロジェクトの唯一の開発者であるため、影響を受ける人は他にいません。