当我有本地提交时,git还原HEAD

时间:2015-07-29 14:54:46

标签: git git-revert

当我有一个本地提交(即我还没有推送到远程存储库的提交)我要恢复的时候执行以下命令会发生什么?

git revert HEAD

我研究了很多,发现了 -

  • " git revert $ id"用于还原在特定提交提交ID($ id和
  • )中所做的更改
  • HEAD本身只不过是对提交ID的引用 最新提交)。

但是我无法理解在这种情况下(当我有本地提交时),HEAD会指向我最近的本地提交,或者远程存储库上的最新提交?

为什么我问这个?

  • 我试过" git pull"从我的分支,但它不会像我一样发生 我当地的一些变化。
  • 所以,我执行了#34; git commit",然后尝试了" git pull"。
  • 现在," git pull"给了我错误(可能是合并冲突:我 碰巧错过了"错误")的细节,所以我 决定恢复我的提交,为此我执行了#34; git revert HEAD"
  • 现在我很困惑,这个命令(git revert HEAD)只能恢复我的更改 我之前提到的(本地)提交?或者最后一次提交遥控器 库?

1 个答案:

答案 0 :(得分:0)

您可以使用git reset command 请注意,您将丢失当前工作空间中的所有更改(如果有)。

$ git reset --hard HEAD~1

此外,this post有助于理解还原和重置之间的差异。