如何在GitHub上还原拉取请求提交

时间:2018-12-05 14:21:10

标签: github git-revert

我正在尝试还原我在GitHub上的最新提交。我浏览过的所有信息都表明,拉取请求中应该有一个还原按钮,但我看不到它,也找不到它。

反正在GitHub上有这样做吗?还是可以在终端执行一些rebase命令?

3 个答案:

答案 0 :(得分:0)

获取要在其中还原的提交的哈希值。然后执行:

git checkout 54722c31619b0662b379923d0be4b8f8f1f125c9

您看到的长数字是您要还原的特定提交的哈希值。
然后强行推入要还原的分支。

git push origin <your_branch_name> --force

我希望这会有所帮助。快乐的编码:)

答案 1 :(得分:0)

在android studio中,点击底部的version control标签。然后单击log

然后您的所有提交将可见。然后右键单击相关提交并还原它。

然后提交更改并再次推送。

答案 2 :(得分:0)

假设此合并请求合并是一个提交合并(我希望如此),那么您可以从Git bash中尝试以下操作:

git checkout your_branch
git revert <hash of merge commit> -m 1
git push origin your_branch

此解决方案假定您要还原回合并请求合并到的分支。如果要遵循传入分支,请改用-m 2

要查找合并提交的SHA-1哈希,可以使用git log,然后从第一次提交中复制哈希,该哈希应显示在顶部。

请注意,在此处不批准合并提交,然后强制执行通常是个坏主意。不好的原因是因为您的分支发布在GitHub上。这意味着重写该分支的历史记录可能会对除您恰好共享该分支之外的任何人造成问题。