有没有办法恢复或撤销git拉,使我的源/回购将回到做git拉之前的旧状态? 我想这样做是因为它合并了一些我不想这样做的文件,但只合并了其他剩余的文件。我想拿回那些文件,可以吗?

编辑:我想撤销git合并澄清。 看到一些答案后,我这样做了

git reflog
bb3139b... HEAD@{0}: pull : Fast forward
01b34fa... HEAD@{1}: clone: from ...name...

现在,我该怎么办?做git重置——难吗?我不想再搞砸了,所以问详细步骤?


当前回答

这样做取消你的合并操作:git merge——abort。

其他回答

这是恢复拉取更改的最简单方法。

** Warning **

请备份您更改的文件,因为它将删除新创建的文件和文件夹。

git reset --hard 9573e3e0

其中9573e3e0是你的{提交id}

它的工作原理 首次使用:git reflog

找到你之前状态的SHA并make(以HEAD@{1}为例)

git reset --hard HEAD@{1}

这样做取消你的合并操作:git merge——abort。

如果你有gitk(试着运行“gitk—all from your git命令行”),这很简单。只需运行它,选择你想要回滚到的提交(右键单击),并选择“重置主分支到这里”。如果没有未提交的更改,则选择“hard”选项。

你可以做git重置——hard ORIG_HEAD

因为“pull”或“merge”在执行这些操作之前将ORIG_HEAD设置为当前状态。