【问题标题】:How to revert back a last push on the git branch? [duplicate]如何恢复对 git 分支的最后一次推送? [复制]
【发布时间】:2020-07-29 08:02:06
【问题描述】:

我的仓库中有很多 branches。我不小心推到了名为feature/customer 的分支。现在我想回滚那个推动。如何在 git 中回滚分支 feature/customer 上的推送?

【问题讨论】:

  • 要删除你推送到远程的分支吗?
  • 不,这个分支已经有很多代码了。我只是在这个分支上推送了一些错误的代码。现在我只想恢复我在这个分支上的最后一次推送

标签: git github bitbucket


【解决方案1】:

假设feature/customer 分支由其他人共享,并且其他人可能已经撤消了您的意外提交,最好的办法是恢复该提交:

# from feature/customer
git revert HEAD

这将在customer 分支之上添加一个 提交,这将在功能上撤消您的意外提交可能引入的任何内容。现在您只需要再次执行常规推送即可将此还原提交到存储库。

请注意,如果意外提交包含任何敏感信息,您可以尝试覆盖远程分支。但是,总是有其他人已经拉的可能性。此外,之前的意外提交仍会在远程 reflog 中存在一段时间。

【讨论】:

  • 这是什么意思? # from feature/customer
  • @ahsan Git 中的评论以 # 开头 ...这只是一个评论
  • 所以我必须站在分支feature/customer 并运行此命令# from feature/customer?这个命令会做什么?它会撤消我在这个分支上的最后一次推送吗?
  • 请参考我之前的评论:-)
  • 我没有正确理解你。请回答我之前的评论
【解决方案2】:

如果您有远程权限。您可以执行以下操作:

git push -f origin last_known_good_commit:branch_name

也可以参考Undoing a 'git push'

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-04-11
    • 2020-09-13
    • 1970-01-01
    • 2015-10-02
    • 2019-02-13
    • 1970-01-01
    • 2013-12-27
    • 2011-10-03
    相关资源
    最近更新 更多