关于git rebase(变基) 的使用

关于git rebase(变基) 的使用

rebase的作用有2个:
  1. 可以使本地的多次提交记录合并为一个(历史简洁)。
  2. 可以使开发分支更新为最新(既合并此开发分支的来源分支上的最新修改,或者是要合并的目标分支已发生变更,此时需要跟新被人已提交的修改到开发分支上),避免开发分支合并到master或其他公共分支上时造成的提交记录开叉混乱。

背景:在dev分支上做3次提交记录,然后此时t1分支有别人已提交代码,但是时间在dev修改之后。

  1. git checkout dev #在dev分支上操作

  2. git rebase t1 #待会要往t1上合并dev分支,故先把t1已提交代码合并到dev上,不管时间先后,t1的提交总在dev之前。

  3. 解决冲突 ,<<<<<<< ======= >>>>>>> 有两部分,< = 之间的是t1上别人已提交的,= >之间的是dev上的,手动解决冲突。

  4. 、git add -u # -u 保存修改、删除到暂存区,还有-A 修改、新建、删除 ,git add . # 保存修改、新建

  5. git rebase --continue ,冲突时一个一个出现的,解决完所有冲突后,t1的最新提交就合到了dev。

  6. 此时还需要把dev上的3个提交历史融合为一个提交

  7. git rebase -i HEAD~3 ,执行此命令之后会出现vi编辑框,3次提交倒叙排列,最上面是最早的,保留最上面的pick 其他的pick都改为squash(挤压),这样3次提交就合为1次提交了(开发分支的提交记录就很简洁)。

  8. 合并提交的时候可能会有冲突,如果有冲突,需要修改,修改的时候要注意,保留最新的历史,不然我们的修改就丢弃了.

  9. 修改之后 git add . git rebase --continue 完成。

  10. 若想放弃压缩 git rebase --abort

  11. 然后push到origin(远程仓库),再把dev合到t1,完成所有工作。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值