如何更改我的1推式github的git消息?
我的环境: 我正在与github私有存储库团队合作 我们只有主分行 重现问题:如何更改我的1推式github的git消息?,git,github,Git,Github,我的环境: 我正在与github私有存储库团队合作 我们只有主分行 重现问题: 我做了一些改变(我说的是单一的,而不是多重的),并将+commit+push添加到github私有存储库中 推送之后,我在github中看到了这条消息——我有一个错误,我想改变 如何更改推送消息 编辑: 重要的是,我的错误信息不会留下任何历史 Edit2: 已推送的文件位于github存储库中,而不仅仅位于我的本地存储库中TL;DR git commit -v --amend git push -f 这将允许您编辑
git commit -v --amend
git push -f
这将允许您编辑最后一条提交消息,并用您的编辑替换远程上的提交
但是
git commit -v --amend
git push -f
你很可能只需要推动修正就更好了
更改现有提交的唯一方法是:
git add changed # example, add changed to the commit
git commit -v --amend # launch editor, edit commit message
这将允许您轻松编辑上次提交(内容或提交消息)
然后,您将发现无法推送到远程,当您尝试时,将被拒绝,并显示如下警告:
! [已拒绝]主机->主机(非快进)
错误:无法将某些引用推送到'git@github.com:xxx/xxx.git'
为防止丢失历史记录,拒绝了非快进更新
在再次按下之前,合并远程更改(例如“git pull”)。见
有关详细信息,请参阅“git推送--帮助”的“关于快进的注意”部分。
这为您提供了两种选择:
git-push-f
)如果您需要它,它是可以做到的——但是要么快速行动(以便没有人下载borked提交),要么知道您将给任何其他开发人员带来问题,并将其推到该分支 如果没有其他人收到带有错误消息的提交,您可以将头部指针重置为提交前的状态:
git reset --soft HEAD^
这将撤消上次提交,并将文件作为暂存文件放入该提交中,您可以使用新消息再次提交。请注意,您必须使用--force推送,因为实际上您正在覆盖服务器上的历史记录:
git commit -m 'new and correct message goes here'
git push --force origin master