首页 > Git 的 commit message 写错了,有办法进行修改么?

Git 的 commit message 写错了,有办法进行修改么?

如题,有时候拼音输入法输错,导致提交了些少儿不宜的单词。
测试 mm 看了不好,请问怎么修改提交的消息呢?


如果已经通过git push提交了,看你们公司用的什么git服务器了,一般用户想修改的话需要相关的权限,找管理员了;如果已经有其他开发人员基于你的提交进行了修改并提交的话,那就更麻烦了,后面的所有提交都要重新做一遍;
如果还没有push到服务器,只是本地进行了commit,并且没有进行新的commit,只需要git commit --amend;如果进行了新的commit,只需要git reset --soft xxx (xxx有问题那次提交的commit id),然后在进行git commit就行,不过所有后面的提交都成为了一次提交;如果想保持每次提交独立的话,使用

git checkout -b tmp ^xxx
git cherry-pick xxx
git commit --amend
git cherry-pick <依次后面的提交id>

xxx还是有问题那次提交的commit id,单独建立tmp分支修改说明,然后将后面的提交一个一个的cherry-pick到新分支,然后删除掉旧的分支就可以了


The question is already well answered on stack overflow :)

http://stackoverflow.com/questions/179123/edit-an-incorrect-commit-message-in-git


git commit --amend

注意:
我测试了一下,在 gerrit 环境下,仅用 git commit --amend 修改 commit message 会提交不上去。
改动一下代码,如加一个空行,再 git add 和 git commit --amend 就可以提交上去了。


git commit --amend
你们有代码审核系统吗?类似于Gerrit这样的?这种的在submit之前都可以多次提交的


虽然这个问题已经过去好久了不过还是想补充一个:
如果想修改以往 commit 的 author 的话,这里有一个脚本可以使用:链接~


git commit --amend 可以对上一次的提交做修改

push -f 如果上一次的提交已经push了,那么需要加f参数覆盖服务端,不过不建议这么搞


git commit --amend或者也可以用git reset HARD 取消最后一次提交,然后再来过。
不过已经push的,就不知道有什么办法可以做到了。。。


git commit --amend

【热门文章】
【热门文章】