如何撤消git pull?
我想撤消我的git pull,因为远程原点上的不需要的提交,但是我不知道我必须重新设置哪个修订。
我怎么才能回到这个状态,然后再把git拉到远程原点上呢?
或者比其他答案更明确:
git pull
哎呦?
git reset --keep HEAD@{1}
旧版1.7.1以上版本的git没有--keep
。 如果你使用这样的版本,你可以使用--hard
- 但这是一个危险的操作,因为它会失去任何本地更改。
给评论者
ORIG_HEAD是HEAD的先前状态,由具有可能危险行为的命令设置,以便于恢复它们。 Git有reflog的用处不大:HEAD @ {1}大致等于ORIG_HEAD(HEAD @ {1}总是HEAD的最后一个值,ORIG_HEAD是危险操作之前HEAD的最后一个值)
git reflog show
应该会显示HEAD的历史记录。 你可以使用它来确定你pull
之前的位置。 然后,您可以reset
HEAD
reset
为该提交。
这对我有效。
git reset --hard ORIG_HEAD
撤消合并或拉:
$ git pull (1)
Auto-merging nitfol
CONFLICT (content): Merge conflict in nitfol
Automatic merge failed; fix conflicts and then commit the result.
$ git reset --hard (2)
$ git pull . topic/branch (3)
Updating from 41223... to 13134...
Fast-forward
$ git reset --hard ORIG_HEAD (4)
结帐:Git中的HEAD和ORIG_HEAD获取更多信息。
链接地址: http://www.djcxy.com/p/36239.html