记一次github合并commit

如题,最近因为项目采用pr的方式进行提交,但是由于各种原因,commit的次数过于多且大部分无用,因此想着去合并多次commit,使pr看起来简洁易懂。

首先用git log --oneline
在这里插入图片描述
可以看见 25d525d-38fe6d8次提交我想合并到一个提交里面, git rebase -i 55f626d,55f626d次提交不会被包括。
会进入下图界面
在这里插入图片描述
介绍一些常用:

pick 	使用当前提交 (可以使用首字母p代替  下面的全部用首字母代替)
r       使用当前提交,但重新编辑提交信息
e		使用提交,但停止修改
s		使用提交,但会合并早期的提交信息
d		移除提交

tip: squash and merge 是pr中比较常用的
tip: 第一行必须用能保留提交的关键字修饰 如r、p、e
如果出现了冲突 就要根据提示先解决冲突 然后git rebase --continue ...

最后修改好了之后 git log --oneline 可以看见本地的commit记录已经修改好了,然后将之推到远程。

git push origin master

后你就会发现 会提示你先拉取最新的代码,拉取之后再提交你会发现 先前合并的提交并没有消失反而会多了两行代码!

后来查资料发现在推送的时候一定不能先pull 因此每次合并前要保证是最新的代码。
然后 再来一次 git rebase -i 除了最新生成的一次提交,别的都用 d 然后再强制提交一次
git push -f origin master 就可以了

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值