Git 技巧:恢复到前一次提交 博客分类: Git git工作
程序员文章站
2024-03-23 16:42:04
...
有时候你希望将你现在的代码返回到前一次提交,并保留所有之前的变化。你希望在前一次提交与当前HEAD之间提交新的代码。
首先,以你希望退回的提交处新建一个分支为 'revert-branch' 。在这个例子中,我们希望退回到前一次提交(假设当前分支为'master'),并且在这个提交上再做修改。
git branch revert-branch HEAD^
接下来切换到新的分支:
git checkout revert-branch
传授一个绝招:从master软恢复到新分支的HEAD。软恢复将改变HEAD的状态,但并不影响工作树。
git reset --soft master
现在,我们执行 git status, 我们将看到我们想要恢复的提交的变化。我要撤销添加'second.txt',但也可能是更复杂的变化:
$ git status # On branch revert-branch # Changes to be committed: # (use to unstage) # # deleted: second.txt #
现在让我们提交这个 'reversal':
git commit -m "reverted to initial state."