你如何重命名推送到GitHub的Git提交?

adi*_*dit 40 git version-control github

我愚蠢地用一个非常混乱的提交名称将提交推送到GitHub.我该如何改变?

是否git commit --amend还在为工作已经被推承诺?

Ada*_*ruk 76

git commit --amend
Run Code Online (Sandbox Code Playgroud)

这会打开你的编辑,或者

git commit --amend -m "Your new message here"
Run Code Online (Sandbox Code Playgroud)

这将允许您在命令行上指定新消息.也可以,但如果您有其他提交重写,则更有用

git rebase -i HEAD^
# then replace 'pick' with 'r' or 'reword' and save, editor should pop up again to edit the msg
Run Code Online (Sandbox Code Playgroud)

由于内容更改,此提交具有新的SHA1,因此您需要强制推送新引用.需要强制,因为它告诉git忘记之前的提交.这是一项安全措施.

git push origin your-branch-name -f
Run Code Online (Sandbox Code Playgroud)

  • 要记住一些事情,如果你正在开展一个大型项目,有人可能已经检查了你要替换的提交,那么他们的工作就变得非常难以合并了. (5认同)
  • 如果不是最后一次提交怎么办? (2认同)