我在Linux的命令行中使用Git而不是图形客户端。
我在提交消息中写错了。
如何更改讯息?
答案 0 :(得分:3)
如果是最近的提交,您只需执行此操作:
git commit --amend
这会使编辑器显示最后一次提交消息,并允许您编辑消息。 (如果要删除旧消息并使用新消息,可以使用-m。)
然后当你推动时,执行此操作:
git push --force <repository> <branch>
使用push -force时要小心。如果其他人将更改推送到同一分支,那么这些更改将被销毁。
任何已经撤消的人都不会收到错误消息,他们需要通过这样的方式更新(假设他们自己没有做任何更改):
git fetch origin
git reset --hard origin/master # Loses local commits
答案 1 :(得分:2)
要更改最近(未删除)提交的提交消息,只需使用
即可git commit --amend -m 'new message'
过去更改(未删除)提交的消息:
git rebase -i [COMMIT BEFORE THE FIRST YOU WANT TO EDIT]
答案 2 :(得分:0)
如果它是您从回购协议提交的最后一个补丁,它将位于 git log 的顶部。
在这种情况下,只需运行以下命令并再次按下该命令。
git commit --amend
然后,修改你的消息并推送它。由于您没有修改文件中的任何更改,因此不应该给出任何错误。
如果某些补丁已经出现在你的头上。然后你还必须检查合并依赖项。在这种情况下,
git reset --hard 您的提交
运行 git commit --amend
将其推回
或
但是你也需要考虑合并依赖。
**
**
你可以使用git rebase,例如,如果你想修改回提交xyz,运行
$ git rebase --interactive xyz ^ 在默认编辑器中,修改&#39;选择&#39;编辑&#39;在您要修改其提交的行中。进行更改,然后使用之前的相同消息提交它们:
$ git commit -a --amend --no-edit 修改提交,然后修改
$ git rebase - 继续 返回上一个头部提交。