Git 修改 Commit 记载

用户云卷云舒  论坛元老 | 2025-4-26 01:41:38 | 来自手机 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 1598|帖子 1598|积分 4794

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
前言

当你利用Git进行版本控制时,不免会遇到需要修改提交记载(commit history)的情况。可能是由于提交信息写错了、忘记添加某个文件、需要重新排列提交的顺序,大概其他各种缘故原由。不外,要注意的是,修改提交记载可能会影响到团队协作,因此需要谨慎处置惩罚。
修改近来一次提交

如果你只需要修改近来一次的提交记载,可以利用以下下令:
  1. git commit --amend
复制代码
这个下令会打开文本编辑器,允许你修改近来一次提交的提交信息。修改完成后,生存并关闭编辑器。
修改之前的提交记载

如果需要修改多个提交或旧提交的消息,您可以利用交互式变基,然后强制推送以更改提交历史记载。以下是一些常见的操作:
修改提交信息


  • 运行 git rebase -i HEAD~n 下令,会在编辑器中展示近来 n 次的提交列表
    1. git rebase -i HEAD~3
    复制代码
    编辑器中的提交列表类似于以下内容:
    1. pick e499d89 Delete CNAME
    2. pick 0c39034 Better README
    3. pick f7fde4a Change the commit message but push the same commit.
    4. ...
    复制代码
  • 将要修改的提交记载前面的 pick 改为 edit,然后生存并关闭编辑器。
    1. pick e499d89 Delete CNAME
    2. edit 0c39034 Better README
    3. edit f7fde4a Change the commit message but push the same commit.
    复制代码
  • 运行以下下令来修改标记了 edit 的提交信息:
    1. git commit --amend
    复制代码
  • 完成修改后继续下一步:
    1. git rebase --continue
    复制代码
    末了出现 Successfully… 就修改乐成了。
  • 在修改提交记载后,需要利用强制推送(force push)来更新远程分支。但要谨慎利用强制推送,由于它会覆盖远程分支上的历史记载。
    1. git push --force origin 分支名
    复制代码
删除提交

如果需要删除一个提交,重复 修改提交信息 的步骤,然后在编辑器中将 pick 改为 drop,生存并关闭编辑器。
归并提交

要归并多个连续的提交,在编辑器中将除了第一个提交外的全部 pick 改为 squash 或 fixup,然后生存并关闭编辑器。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

用户云卷云舒

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表