撤消git pull

我见过的解决混帐问题与我的稍有不同。

这是我所做的:

目录A有一个项目(不是回购)。 我初始化了一个存储库,添加了这些文件,但没有提交任何内容。 然后我从存储库B中取出,这个存储库重写了我的一些上传文件。

我的印象是我可以使用git reset --hardgit reset --hard合并。 当然,这只是检查了我刚刚提交的提交的头部。

在我做这个拉之前,我应该分支并提交一些东西,后见之明很好。 有什么方法可以让我的旧unsaged文件回来?


看起来这里有一个恢复阶段文件的答案:

完成git reset后恢复添加的文件--hard HEAD ^


git pullgit fetch + git merge 。 这是覆盖您的更改的合并步骤。 要恢复到合并前的状态,请使用git log来查找最新的提交,然后使用git reset --hard 1234abcd其中1234abcd是所需提交的散列。

请注意,重置之后, git pull会再次合并更改。 要恢复好的更改,请使用git revert ,它将创建一个额外的提交以反转更改。


要么只是重置到前一个HEAD(即,您在存储库中提交的,未从远程更新的),或者使用git reflog 。 后者显示在你的仓库中做出的动作列表, git pull命令应该是其中的一部分。 只需将git reset --hard X设置为该命令之前的状态即可。

或者只是从前面的HEAD分支(你可以删除/覆盖前一个分支),在那里做你的改变,并再次拉动...

链接地址: http://www.djcxy.com/p/23497.html

上一篇: Undo a git pull

下一篇: How to recover after i execute :git reset