git 撤销更新

使用"git add"把更新提交到了暂存区。这时"git status"的输出中提示我们可以通过"git reset HEAD ..."把暂存区的更新移出到WorkSpace中

git reset HEAD <file>

撤销本地仓库更新

撤销提交有两种方式:

  • 使用HEAD指针
  • 使用commit id

在Git中,有一个HEAD指针指向当前分支中最新的提交。当前版本,我们使用"HEAD^",那么再钱一个版本可以使用"HEAD^^",如果想回退到更早的提交,可以使用"HEAD~n"。(也就是,HEAD^=HEAD~1,HEAD^^=HEAD~2)

git reset --hard HEAD^
git reset --hard HEAD~1
git reset --59cf9334cf957535cb328f22a1579b84db0911e5

现在又想恢复被撤销的提交可用"git reflog"查看仓库中所有的分支的所有更新记录,包括已经撤销的更新,撤销方法与前面一样。

git reset --hard HEAD@{7}
git reset --hard e0e79d7

参数说明

  • --hard:撤销并删除相应的更新

  • --soft:撤销相应的更新,把这些更新的内容放到Stage中