撤消 git 拉取以与恢复的远程主机同步

Undo a git pull to be in sync with recovered remote master

我将一些东西从我的本地分支推送到远程主机。这是一个错误,管理员将删除远程仓库中的推送。同时(又犯了一个错误)我也把这个改变从远程主机拉到了本地主机。现在我想从我的本地回购中删除这个拉动,这样一旦远程回购进入以前的状态,我的回购仍将与其同步。

在日志对话框中右键单击以前的修订是否足够,然后 select“将 'master' 重置为此...”(对以前的修订执行 git reset ),然后还原工作目录中的所有更改,还是我必须执行其他操作或更多操作?

补充问题。硬重置是否与混合重置后恢复相同?

你的想法是对的。但是,为了确保一切同步,我会等待管理员删除您的推送,执行 git fetch 以便您拥有最新的 origin/master,然后执行 git reset hard origin/master在你的 master 分支上。这会将您的本地 master 分支指向相同的提交 origin/master 指向。请注意,如果有其他开发人员在您不小心推送后拉取了 master,他们也需要这样做。

关于您的附加问题:revert 创建一个新的提交,而 reset 将当前分支移动到一个新的提交,因此硬重置不等同于混合重置加上还原。它 相当于混合重置加上丢弃工作目录中的更改(例如通过执行 git checkout .)。也许这就是您所说的“还原”的意思,但只是想明确一点,实际的 git revert 是一个不同的概念。