中間マージを削除し (スカッシュではなく削除)、最後の 2 つのコミットを新しいブランチに移動したいと考えています。
これは私の現在git log --graph
です:
* 3a5c453 - (2 hours ago) last commit (HEAD, master)
* b6c19f1 - (2 hours ago) Merge branch 'tade' into HEAD
|\
* | be356d0 - (2 hours ago) previous commit
| * 65328dc - (3 hours ago) some other commit in branch tade
私はこれで終わりたい:
* bbbbbbb - (some time in the future) a later commit on tade (tade)
* | aaaaaaa - (some time in the future) a later commit on master (master)
| * | 3a5c453 - (2 hours ago) last commit (HEAD, newone)
| * | be356d0 - (2 hours ago) previous commit
|/ |
| * 65328dc - (3 hours ago) some other commit in branch tade
git rebase -i
ブランチ tade とのマージを削除してgit branch newone
からgit reset --hard HEAD^2
、最後の 2 つのコミットを新しいブランチに移動するために使用することを考えました。ただし、リベースを実行すると、マスターにマージされた tade ブランチからのすべてのコミットが表示され、| それらを削除することに消極的でした。
より良い方法はありますか、それとも先に進むべきですか?
編集:意図した状態グラフを更新して、より明確にしました。2 つの新しいコミット (aaaaaaa
とbbbbbbb
) は、状態をもう少しよく説明するためだけのものです (願っています)。