Git 技巧:恢复到前一次提交

有时候你希望将你现在的代码返回到前一次提交,并保留所有之前的变化。你希望在前一次提交与当前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."

猜你喜欢

转载自vipshichg.iteye.com/blog/2026550
今日推荐