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

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

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

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


当前回答

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

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

git reset --hard HEAD@{1}

其他回答

我建议做的第一件事是做一个项目的副本。

你可以签出一个新的分支(git checkout -b NewCopy),这样你就可以有一个副本,然后返回到你签出的分支。

使用实例查看git引用。

git reflog

它将显示您的参考日志和commit_Id{类似e0371eb},您可以使用它们返回到特定的参考点。

运行此命令可回溯到某个点

git reset --hard 7316f34  //replace that with your commit id

我建议打开两个终端,一个用来显示日志,另一个用来运行命令

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

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

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

git reset --hard HEAD@{1}

要将最后的合并恢复到自定义分支,最简单的方法是:

git reset --hard custom-branch@{1}

主分支示例:

git reset --hard main@{1}

试着运行

git reset --keep HEAD@{1}