我知道如果我在一个分支中工作,我可以创建一个新分支,我所有的提交都将转到新分支。但是如果我一直在努力,我已经做了一些提交,仍然在工作,然后意识到需要一个新的分支,包括我已经做出的提交(但没有推送到原点)。有没有办法让我把所有东西都放到一个新的分支中?
问问题
41 次
1 回答
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
并继续工作。
于 2012-07-26T02:11:58.613 回答