推一个固定的提交Git?

我修复了一些代码,并用一个不正确的提交消息推送它。 当我试图修复提交消息时,我意外地恢复了提交。 现在的情况是:

  • 最新的提交=正确的提交消息,但之前提交的更改已撤消
  • 先前的提交=正确的提交内容,但错误的提交消息
  • 所有这些已经被推送到服务器。

    我想摆脱最新的提交,更改以前提交的提交消息,并将其提交回服务器。

    我很满意Atlassian Source Tree的解决方案,但命令行也没问题。


    如果这是最后一次提交,那很简单:

    git commit --amend
    

    这将带有编辑器的最后一个提交消息,并让你编辑消息。 (如果您想清除旧信息并使用新信息,可以使用-m。)

    然后当你推动时,这样做:

    git push --force <repository> <branch>
    

    参考:推后改变git commit消息(假定没有人从远程拉出)


    你不应该修改一个已经被公开推送的提交,因为你的队友可能已经把它提交了,并且git会在新提交和旧提交合并时将它们合并,当它们被推送时将其提交回来(参见本章在progit中的理解细节)。

    我建议你保持原样(也许只需添加一个新的提交扩展消息,让人们在原始提交消息中得到你想要的东西)。

    如果你真的需要从历史中抹去这些东西,你需要所有的团队成员在你提交的新版本提交你的承诺后重新提交他们的新提交。

    链接地址: http://www.djcxy.com/p/49853.html

    上一篇: push a fixed commit on Git?

    下一篇: how do I change a git commit message in bitbucket