Git:如何跳回到以前的提交,从而撤消我最近所做的更改?



我已经在我的分支中进行了 4 次提交并推送到 Github。这些提交中的最后 3 个包含不应进行的更改。我想"跳回"第一次提交,从分支中完全删除所有不需要的更改。

到目前为止我已经尝试过

git reset --hard 6b9b9baa6758598ca2ed48d5e029b4b5a2a7f194

git revert <SHA>

但这些似乎什么也没做 - 不需要的更改保留在我的拉取请求中。

有谁知道我该怎么做?

更新: 我需要返回提交 6b9b9baa6758598ca2ed48d5e029b4b5a2a7f194。日志如下所示:

commit 0a90687022fb458de36ac3ff3b3fd3f3920f6b0d
Author: Me
Date:   Thu May 31 10:04:36 2018 +1000
Removed svg
commit 7dbcceb6e294572a531d84837753f5698bf192f6
Author: Me
Date:   Thu May 31 10:02:12 2018 +1000
Removed icon from icons directory
commit 97cfd16c87ea280a4e6a7570272157e86195542e
Author: Me
Date:   Wed May 30 17:27:55 2018 +1000
Added icons
commit 6b9b9baa6758598ca2ed48d5e029b4b5a2a7f194
Author: Me
Date:   Wed May 30 16:27:33 2018 +1000
Updated css

您需要在重置或还原后推送到 Github。

要删除远程分支中的提交,您需要在重置后使用强制标志 (*( 进行推送。

另一种选择是还原所有 3 个提交并推送。请注意,错误的提交将保留在远程分支历史记录中。

(*( 如果您不知道后果,不建议这样做。

您需要在重置或还原后推送

1( 在重置的情况下,您需要按力(因为您正在更改远程历史记录(,如下所示:

git push origin <branch name> -f

2(在还原的情况下需要简单的推送,如下所示:

git push origin <branch name>

用户还原而不是重置总是更好。 因为它会创建提交的额外(反向(提交,并且不会重置 git 的历史记录。

相关内容

  • 没有找到相关文章

最新更新