git合并多次commit提交

首先查看历史记录

复制代码
git log

查看你想要合并的commit是哪些(注意:这里是逆序,最上的是最新提交)

找到当前想要合并的最后一个记录,复制该记录的下一个记录的id(黄色部分commit id),含义就是选取该id上面的所有commit记录(不包含该id的记录)

q 退出记录(log)查看

开始rebase

复制代码
git rebase -i 1304a3905913b612bd4116c43a4144432882d66c

进入vim编辑器,输入 i 进入编辑,修改pick字段(变为顺序,底下是最新提交记录),将你要合并的记录的 pick 修改为 squash 或者 s (注意:第一个pick不能修改),如果你还想改commit,可以对应的去改

编辑好后按 Esc 退出编辑,然后按 :wq 进行保存

如果有冲突需要手动去修改,修改好了后

复制代码
git add .

然后继续rebase

复制代码
git rebase --continue

(如果不想rebase了,或者想重头再来,可以输入取消)

复制代码
git rebase --abort

接下来会进入另一个vim编辑器,同样按 i 进入编辑,把不要的commit在前面加 # 注释掉

完成后按 Esc 再按 :wq 保存

rebase完成之后,强制推送(注意:这里最好是自己的分支或者用其他非重要分支测试一下, 一定要强制推送,不然不生效)

复制代码
git push -f origin xxx
相关推荐
lin62534225 小时前
Android仿小米视频播放器的缩放滚轮
android·git·github
互亿无线明明5 小时前
在 Go 项目中集成国际短信能力:从接口调试到生产环境的最佳实践
开发语言·windows·git·后端·golang·pycharm·eclipse
world_in_world5 小时前
git常见场景命令
git
码上成长6 小时前
长耗时接口异步改造总结
前端·git·后端
Elieal6 小时前
Git 面试题全面汇总
git
rchmin6 小时前
Git撤销命令revert与reset区别
git
达子6667 小时前
git-lfs的安装配置,解决大文件存储问题
linux·c++·git
_OP_CHEN7 小时前
【Git原理与使用】(三)Git 分支管理终极指南:从基础操作到企业级实战,解锁高效协作密码
linux·运维·git·git分支管理·企业级组件·企业协作
学IT的周星星7 小时前
Git 推送远程仓库全攻略:GitHub + Gitee 的 HTTP 和 SSH 四种方式详细对比与实操步骤(2025最新版)
git·gitee·github
拽着尾巴的鱼儿18 小时前
工具篇:git 分支版本回退
git