git:修复错误的推送提交消息的"正确方法"是什么

Pra*_*een 3 git git-push git-commit

我写了一个不正确的提交消息,我把它推到了遥控器上.有很多问题已经解决了这个问题:

只是一对.但是他们似乎都终止了git push --force,并且关于为什么这是一个坏主意的额外警告 - 它编辑了历史,这意味着使用存储库的每个人在尝试拉动时都会受到影响.他们似乎并没有说"正确"的事情是什么.

那么处理这种情况的建议或"正确"方法是什么?我以为我可以添加额外的消息git commit --allow-empty,但据说有" 很少有理由这样做 ".为--allow-empty确实解决的事情以正确的方式?如果没有,什么正确的做法?

注意:以"正确的方式"做事可能涉及"承认我搞砸了".作为我正在寻找的一个例子,该git tag手册页讨论了重复推送标签.它清楚地讨论了重新标记错误标记的提交的方法,给出了推荐的行动方案和一种--force做事方式.

Dav*_*sch 6

您可以做的一件事是在提交中添加注释,例如git notes add -m "Here is my note" head~1.这将显示在git log没有实际更改提交的情况下.另一种方法是向提交添加带注释的标记,例如git tag -a tag-summary -m "Here are the tag details" head~1.我更喜欢标签方法,因为标签显示在大多数工具的日志视图中,而注释则不显示(尽管它们确实显示在内git log).