Git将多个commit合并成一个commit
直接上方法,这里我的目的是想把这四次commit合并成一次
这里使用到一个命令:git rebase -i,
既然要把最上面的合并成一次,那么git rebase -i 后面跟的参数应该是想要合并的最前面commit id的上一个,就是d6c2b....这个
git rebase -i d6c2b9f83c764306a83badf653f3d08a95bad1cd
输入完成会弹出以下框,这里选择基于最早的pick合并,合并到最早的(ec6c077d9e one)合并,其他都合并到前面的commit id去
修改成以下然后保存(意思就是把下面的三个commit 合并到one)
保存后弹出下面
保存之后,git log查看,这里commit变了(正常,因为文件变了)
ok~
补充(合并不连续的commit id):
以上是将连续的commit id合并,假如是不连续的话,那么你也是拿最早的commit id来执行git rebase -i commit id,然后进入弹出框,你会看到pick中没有最早你要合并的那个commitid,这里你需要按照列表的格式把最早的commit id复制到顶部,格式就是 pick commit id XXX,这个XXX就表示注释(可有可无),然后再把你要合并的几个commit一定复制到当前这个新加的pick下面,然后修改成 (s commit id XXXX),有几个写几个,把重复的去掉,然后保存即可。
分类:
Git/Svn
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!