有没有办法回滚最后一次提交并将其放入单独的分支以供以后测试?我做了一些我不想完全丢弃的更改,我只想将它们放在不同的分支中以供进一步测试。
谁能帮我这个?
有没有办法回滚最后一次提交并将其放入单独的分支以供以后测试?我做了一些我不想完全丢弃的更改,我只想将它们放在不同的分支中以供进一步测试。
谁能帮我这个?
是的,您可以实现这一点 - 从当前分支分支并创建一个新分支以保留提交,检出回原始分支,然后回滚原始分支中的提交。
因此,从您当前的分支(让我们称之为current
)创建并签出一个新分支separate
git checkout -b separate
这将创建一个 separate
具有新提交的新分支。现在回到原来的分支
git checkout current
在此分支上,您现在可以回滚最后一次提交
git reset --hard HEAD~1
如果您稍后想要访问该较旧的提交,则必须执行 agit checkout separate
并且该提交应该在该分支中可用。
您可以分两步完成此操作,而无需在分支之间切换。开始了。
从当前分支创建一个新分支,以保留当前状态:
git branch feature_maybe
恢复当前分支中的最后一次提交:
git reset --hard HEAD^
是的 - 使用 签出新分支git checkout -b <new branch name>
,使用 切换到原始分支git checkout <original branch name>
,然后git reset --hard HEAD~1
将原始分支移回提交。(与往常一样,在四处移动分支时,使用类似的程序逐步可视化您正在做的事情是最安全的gitk
。)