我知道如果我在分支机构工作,我可以创建一个新的分支,我的所有提交都将转到新的分支。但是,如果我一直在工作,我做了一些提交,仍在工作,然后意识到需要一个新的分支,包括我已经做过的提交(但没有推到原点)。有没有办法让一切都进入新的分支?
答案 0 :(得分:3)
当然,请执行以下操作:
git checkout -b new_branch
这将从当前HEAD创建一个新分支。然后:
git stash
暂时存储当前的变化。然后:
git checkout former_branch
回到前一个分支,然后:
git reset --hard HEAD^
这会在former_branch
结束时重新提交一个提交(使用您喜欢的任何内容指向您想要返回的提交,可能是origin/master
或其他内容)。最后:
git checkout new_branch
git stash pop
继续工作。