从克隆的存储库本地还原提交/在特定提交后重置所有更改

时间:2018-10-22 16:45:03

标签: git gitlab git-checkout git-revert

我已克隆存储库并转到分支developergit checkout developer)。我想在本地还原某人做出,推送并合并到分支2403d2547f9183531bbd81672d887186bba34579的提交(使用SHA:developer提交)。我不想更改存储库中的任何内容,而仅更改本地计算机上的内容。我该如何还原呢?

1 个答案:

答案 0 :(得分:2)

只需执行git revert或您要执行的其他任何操作,就不要推送更​​改。

默认情况下,您在git存储库中所做的任何事情都是在本地完成的,您需要使用push命令来推送更改。因此,只需进行更改,而不要执行git push

如果您想还原特定的提交并保留其他所有内容,则可以使用git revert commit_sha

但是在这种情况下,您似乎还真正想要的是“还原”特定的提交及其之后的所有提交。在这种情况下,如果您不想推送它(例如,您只想编译代码的特定版本,或者对该特定版本进行一些调试),则可能需要使用git reset --hard commit_sha^commit_sha之前的状态“返回”,或git reset --hard commit_sha返回到精确的commit_sha的状态,并且仍包含此提交。