永久连接: https://shudong.wang/10620.htmlhtml
使用 Git 时,可能会遇到须要编辑提交消息的状况。作出更改的缘由有不少,例如,修正了错字,删除了敏感信息或添加了其余信息。linux
本指南说明了如何更改最新或较旧的 Git 提交的消息。webpack
该 git commit --amend
命令容许您更改最新的提交消息。git
要更改还没有推送到远程存储库的最新提交的消息,请使用该 --amend
标志再次提交。web
cd 到终端中的存储库目录。json
运行如下命令以修改最新提交的消息:webpack-dev-server
git commit --amend -m " New commit message. "`</pre></div>
复制代码
该命令的做用是用新的覆盖新的提交。 该 -m
选项容许您在不打开编辑器会话的状况下在命令行上编写新消息。编辑器
在更改提交消息以前,您还能够添加之前忘记的其余更改:spa
`git add .
git commit --amend -m "New commit message."`
被修改的提交是具备不一样 SHA-1 的新实体。先前的提交将再也不存在于当前分支中。命令行
一般,您应该避免修改已经推送的提交,由于这可能会给基于此提交工做的人们带来麻烦。在更改推送的提交以前,最好先咨询您的开发人员。
若是更改了最近推送的提交的消息,则必须强制推送它。
导航到存储库。
修改最新的推送提交的消息:
`git commit --amend -m " New commit message. "`
强制推送以更新远程存储库的历史记录:
`git push --force branch-name`
若是须要更改较旧或屡次提交的消息,则可使用交互方式 git rebase
来更改一个或多个较早提交。
该 rebase
命令将重写提交历史记录,强烈建议不要对已经推送到远程 Git 存储库的提交进行从新整理。
导航到包含要更改的提交消息的存储库。
键入 git rebase -i HEAD~N
,其中 N
是执行基础更改的提交次数。例如,若是要更改第 4 次提交和第 5 次最新提交,请输入:
`git rebase -i HEAD~5`
`pick 43f8707f9 fix: update dependency json5 to ^ 2.1.1 pick cea1fb88a fix: update dependency verdaccio to ^ 4.3.3 pick aa540c364 fix: update dependency webpack-dev-server to ^ 3.8.2 pick c5e078656 chore: update dependency flow-bin to ^ 0.109.0 pick 11ce0ab34 fix: Fix spelling.
# Rebase 7e59e8ead..11ce0ab34 onto 7e59e8ead (5 commands)`
移至要更改的提交消息的行,并替换 pick
为 reword
:
`reword 43f8707f9 fix: update dependency json5 to ^ 2.1.1 reword cea1fb88a fix: update dependency verdaccio to ^ 4.3.3 pick aa540c364 fix: update dependency webpack-dev-server to ^ 3.8.2 pick c5e078656 chore: update dependency flow-bin to ^ 0.109.0 pick 11ce0ab34 fix: Fix spelling.
# Rebase 7e59e8ead..11ce0ab34 onto 7e59e8ead (5 commands)`
保存更改并关闭编辑器。
对于每一个选定的提交,将打开一个新的文本编辑器窗口。更改提交消息,保存文件,而后关闭编辑器。
`fix: update dependency json5 to ^ 2.1.1 `
强制将更改推送到远程存储库:
`git push --force branch-name
要更改最新的提交消息,请使用 git commit --amend
命令;使用 git rebase -i HEAD~N
来更改旧的或多条提交消息。
通常不要修改推送的提交,由于它可能会给您的同事带来不少问题。