再次理解 git rebase

4 篇文章 0 订阅
3 篇文章 0 订阅

为什么说“再次”呢,因为之前有发过一篇 git rebase 的文章,如今刚好又要用到,发现不会使用了,而且当时的也理解不太对~


git rebase

是基准基变的意思,在原来的提交记录上可以变成任何你想要的的模样!(确实很强大)

我的使用场景 是将多个提交记录合并成一个提交记录

首先 理解几个git rebase时会用到的关于提交记录将变成怎样的参数

pick:按原样应用所选的提交。

edit:选择在应用此提交之前编辑受此提交影响的文件。

drop:忽略所选的commit,因此不会应用这些更改

squash:选择以将所选的提交与前一个相结合,两个提交的提交消息将被合并

reword:选择此选项以在应用提交消息之前编辑它。

fixup:选择此选项以将所选的提交与前一个提交相结合,修复提交的提交消息将被丢弃

值得注意的是
不能全部选择 drop commit,不然就没有需要改变的了
squashfixup 不能在第一个commit,因为他们需要与前一个commit配合

语法

git rebase -i HEAD~n #表示从最近一个提交开始数到第n个提交,n指数字
git rebase -i n m #表示从第n个提交到m个提交,nm指commit id

例子

假设觉得这个5个提交很多余,需要合并成1个
在这里插入图片描述
看操作

git rebase -i HEAD~5

在这里插入图片描述
其实一个控制台我们在这里不好编辑,其实这个文件是在
代码跟目录xxx/.git/rebase-merge/git-rebase-todo里的所以我们可以用编辑器打开更方便
在这里插入图片描述

在这里插入图片描述
保存后在命令台执行退出 :q
在这里插入图片描述
提交1 和提交2 冲突了需要解决一下

在这里插入图片描述
然后提交,继续

在这里插入图片描述
最后的结果
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值