1

我知道如果我在一个分支中工作,我可以创建一个新分支,我所有的提交都将转到新分支。但是如果我一直在努力,我已经做了一些提交,仍然在工作,然后意识到需要一个新的分支,包括我已经做出的提交(但没有推送到原点)。有没有办法让我把所有东西都放到一个新的分支中?

4

1 回答 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 回答