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
相关推荐
Wiktok2 小时前
Git 提交规范网页说明
git
AWS官方合作商10 小时前
告别漫长等待:利用 Amazon GameLift Servers 实现分钟级快速迭代
前端·git·云计算·github·aws
红尘客栈210 小时前
git文件的上传
git
正经教主10 小时前
【Git】Git05-02:Github 基础同步命令
git·github
黎茗Dawn11 小时前
git-Windows-my-dell-笔记
开发语言·windows·git
命运之光17 小时前
【快速解决】怎么用git拉取项目到本地
git
万山y17 小时前
Git 命令大全
git
Siren_dream17 小时前
linux安装git-lfs(无需root权限)
linux·运维·git
因为奋斗超太帅啦17 小时前
Git分布式版本控制工具学习笔记(二)——git远程仓库
笔记·git·学习
艾莉丝努力练剑17 小时前
【Git:分支管理】Git 分支管理完全指南:从创建、合并到冲突解决
linux·服务器·人工智能·git·gitee·centos·分支管理