git rebase合并本地多次提交记录

操作步骤

首先用git log命令查看历史提交记录,示例git仓信息如下:

$ git log --pretty=oneline
f70c5a84996c05511d3f98034d56ca05706d62f8 (HEAD -> test) fourth commit
56a79bb29da6e483fc6de6e8f271e1a5dcba52a5 third commit
64db6fddd02a04194b3ca22e91dd1de23f9f81d7 second commit
783795e5285155f37c10b72ec9160e554c198ae0 first commit

比如这里希望合并本地的前三条记录(f70c, 56a7, 64db),需找到待合并记录(64db)的前一条记录的commitID(7837),作为git rebase -i命令的参数

输入git rebase -i 7837, 进入历史提交的编辑界面:
在这里插入图片描述

需要注意的是,上图显示的提交顺序与git log是相反的。将除了第一行的pick都改成squash, 保存退出(:wq),再将commit信息改成merge three commit, 保存退出,再次使用git log查看:

$ git log --pretty=oneline
f448ac261c7e26682935201244eda0e9d93fd307 (HEAD -> test) merge three commits
783795e5285155f37c10b72ec9160e554c198ae0 first commit

发现f70c, 56a7, 64db三条本地记录已经被成功合并为一条新记录。

注意事项

只对从未推送至公共仓库的提交记录执行git rebase

原因可参考https://www.progit.cn/ “Git分支 -> 变基的风险”,该小节详细讲述了在一个公共仓库执行变基操作的问题。

参考文档

https://www.progit.cn/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

pcj_888

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值