git-branch - git rebase - Gitで最新のコミットを新しいブランチに移す

git rev-list / git / branching-and-merging

マスターにコミットした最後の数回のコミットを新しいブランチに移し、マスターをそのコミットが行われる前に戻したいと考えています。残念ながら、私のGitスキルはまだ十分ではありませんが、何かお手伝いできることはありますか?

例:この状態からどうすればいいのか?

master A - B - C - D - E

これには?

newbranch     C - D - E
             /
master A - B 

itzmebibin



Answer #1

また、2つのコマンドだけでできる方法もあります。また、現在の作業ツリーはそのまま維持されます。

git checkout -b newbranch # switch to a new branch
git branch -f master HEAD~3 # make master point to some older commit
git checkout -b newbranch #新しいブランチに切り替える
git push . +HEAD~3:master #マスターが古いコミットを指すようにする