基于本文回答

播面 播面

刷题像听歌,多听自然懂
0
评论

如何修改刚刚完成的最后一次 commit 的提交信息?

知识点图片

修改最后一次 commit 的提交信息非常简单,主要使用 git commit --amend 命令。

这里有两种常用的操作方式,取决于你想如何修改:

方法一:直接在命令行修改(适用于简短的修改)

如果你只需要把提交信息改成一句简短的话,可以直接使用 -m 参数:

bash
git commit --amend -m "这里写你全新的提交信息"

执行后,最后一次 commit 的信息就会被直接替换为这句新内容。

方法二:进入编辑器修改(适用于较长的修改或保留部分原信息)

如果你想在原有的提交信息基础上进行修改,或者需要写多行信息,直接输入:

bash
git commit --amend

执行后,Git 会打开你默认的文本编辑器(通常是 Vim 或 Nano),里面会显示你上一次的提交信息。

  • 如果你进入的是 Vim 编辑器
    1. 按一下键盘上的 i 键进入编辑模式。
    2. 修改顶部的提交信息。
    3. 修改完成后,按 Esc 键退出编辑模式。
    4. 输入 :wq 然后按回车键(保存并退出)。

⚠️ 重要警告:如果你已经 push 到了远程仓库

git commit --amend改变 commit 的 Hash 值(相当于生成了一个全新的 commit 替换掉了旧的)。

  • 如果你的 commit 还在本地(没有 push 过):随便改,没有任何副作用。
  • 如果你的 commit 已经 push 到了远程仓库(比如 GitHub/GitLab)
    常规的 git push 会报错并被拒绝。你需要使用强制推送来覆盖远程仓库的历史记录:
    bash
    git push --force
    # 或者更安全的命令:
    git push --force-with-lease
    *注意:如果你是在团队协作的公共分支(如 mainmaster)上,且其他人可能已经拉取了你的旧 commit,极其不建议使用强制推送,这会导致其他人的本地代码库出现冲突。*
00:00
00:00