git merge, git rebase

git rebase :(1)保持git  history  线性commit 历史,无分叉。(2)合并多个commit 提交, git rebase -i HEAD~3,当前最近提交的三次commit 合并为一个

 

例如:master 当前commit 历史为 :

       a: master: c1-->c2 ;  最新提交在c2 提交

       在c2 处checkout 出dev 分支,并提交 c3,c4, 此时dev  分支如下

         dev :           c1-->  c2-->c3-->c4 

     此时有其他开发人员在master 提交了c5 

       master:    c1-->c2-->c5

     假如用git merge 命令合并dev 到master,会导致master 提交历史分叉。如图

      git rebase 就派上用场了

      git checkout master; git pull; 

       git checkout dev;git rebase master; 有冲突合并冲突;合并冲突后 git rebase --continue;

       git checkout master; git merge dev;  git log --online --graph 查看线性提交历史

 

      如果dev 最近提交的三次commit 合并为一个;就使用 git rebase -i HEAD~3

 

 

              

      

     

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值