如何撤消 git pull

2025-06-07

如何撤消 git pull

你是否有过这样的经历:在开发一个项目时,运行完后git pull才发现彻底搞砸了?现在,你所有的代码都被远程仓库中的内容覆盖了——而有时这并不是你想要的。在这种情况下,你很容易感到恐慌,但幸运的是,有几种方法可以将代码恢复到原来的状态并撤消git pull……

首先,备份你的项目,以防万一情况恶化。另请注意,这些命令会导致你丢失所有未提交的更改——因此备份可以帮助你在继续操作之前保存这些内容。至少这样,你就能拥有当前的版本。备份完成后,你需要获取所有提交历史记录的列表。你可以运行以下命令来执行此操作git reflog

git reflog
Enter fullscreen mode Exit fullscreen mode

这将生成如下所示的列表:

648e314 (HEAD -> master, origin/master) HEAD@{0}: commit: Design refresh
b0168ee HEAD@{1}: commit: Minor CSS tweaks
514a02f HEAD@{2}: commit: Fixed extra curly brace
b432ba7 HEAD@{3}: commit: fixed border-radius
a707d13 HEAD@{4}: commit: fixed image border-radius
abf89a3 HEAD@{5}: commit: updated look and feel
Enter fullscreen mode Exit fullscreen mode

选择要恢复到的版本。例如,如果我想恢复到“细微 CSS 调整”,我会选择 ID b0168ee。接下来,运行以下命令将你的代码库恢复到该版本:

git reset --hard b0168ee
Enter fullscreen mode Exit fullscreen mode

这很简单,并且可以让您更好地控制要恢复的版本。不过,另一种更简单的方法是指定一个时间。如果您不想运行git reflog,可以运行以下命令将存储库恢复到 30 分钟前的版本(假设您的分支是 )master请注意,如果您已经在某个特定分支上工作了很长时间,这可能会将您恢复到很远的版本。在这种情况下,您最好使用之前的方法——但如果你有备份,应该没问题。😄

git reset --hard master@{"30 minutes ago"}
Enter fullscreen mode Exit fullscreen mode
文章来源:https://dev.to/smpnjn/how-to-undo-a-git-pull-b88
PREV
Javascript 浅拷贝 - 什么是浅拷贝?
NEXT
CSS像素艺术生成器