看着我的提交树,我看到一个相对较旧的推送提交了不正确的描述。 我想改变它。那可能吗?我该怎么做?如何修改旧的现有推送提交?
该提交已被推送到服务器。该提交是一个旧的提交,其后提交了很多提交。我只想更改消息,而不是内容。
看着我的提交树,我看到一个相对较旧的推送提交了不正确的描述。 我想改变它。那可能吗?我该怎么做?如何修改旧的现有推送提交?
该提交已被推送到服务器。该提交是一个旧的提交,其后提交了很多提交。我只想更改消息,而不是内容。
无论如何,您必须做force push
(不推荐),它会重写该提交中的整个树。
git rebase -i HEAD~n # Displays a list of the last n commits on the current branch
从列表类似,
pick e499d89 Delete CNAME
pick 0c39034 Better README
pick f7fde4a Change the commit message but push the same commit.
# Rebase 9fdb3bd..f7fde4a onto 9fdb3bd
变化pick
到reword
像
pick e499d89 Delete CNAME
reword 0c39034 Better README #line to change the message
pick f7fde4a Change the commit message but push the same commit.
# Rebase 9fdb3bd..f7fde4a onto 9fdb3bd
保存并关闭提交列表文件。在每个生成的提交文件中, 键入新的提交信息,保存该文件并关闭它。
然后
git push --force
希望这helps.for更多信息https://help.github.com/articles/changing-a-commit-message/
这可能吗?
是,itzmeontv的回答涵盖了这
我该怎么办呢?
不要。提交消息是提交的一部分,并影响SHA1哈希(以及其他元数据,如父提交)。
更改消息因此创建一个新的提交(与在树中的相同的效果),因此,也重写每个后续提交只是改变他们的父母。
也就是说,它构造了一个以该原始提交的新版本开始的并行复制时间线。其他任何与原始时间线相反的人都会不高兴。
请注意,即使一旦你说服每个人都容忍你的历史重写,他们仍然会拥有旧的提交,直到它被垃圾收集,并且只要他们希望它永远活着就可以标记它。 – Useless
http://stackoverflow.com/a/179147 – mm759
可能重复[如何修改现有的,unpushed提交?](http://stackoverflow.com/questions/179123/how-to-modify-existing-unpushed - 提交) – Vampire
我试过这个,但它不适用于旧的提交。或者,我可能只是不明白如何将它应用到一个旧的。@ mm759 –