码迷,mamicode.com
首页 > 其他好文 > 详细

GIT rebase讲解

时间:2018-10-11 01:31:40      阅读:608      评论:0      收藏:0      [点我收藏+]

标签:现在   mit   start   游离   int   使用   com   head   注意   

对分支进行rebase

  1. 从master分支checkout出fork分支,并在master和fork上都进行了一些修改
    技术分享图片

  2. 现在fork分支想要及时的同步master分支上的修改,避免在已经失效的代码上继续工作
    技术分享图片

  3. 该过程总的提交树变化如下:
    技术分享图片

对一段commit进行整理(squash)

??很多开源项目要求参与者在发起RP前对本次的commit进行squash,关联上该RP的issue编号,下面看下如何达到此目的:

  1. 首先我在fork分支上进行了随意的两次commit
    技术分享图片

  2. 然后使用git rebase -i命令进行整理

    命令格式:
    git rebase -i <startpoint> <endpoint>
    需要注意<startpoint> <endpoint>是左开右 闭,所以<startpoint>应该是你需要整理的commit的上一 次提交id。
    git remote -i e14ed9d^ 342889d

    把除去第一行的其他行的pick命令修改为squash命令
    技术分享图片
    然后按照相关开源项目要求编辑整理后的comment注释
    技术分享图片

  3. 最好查看提交记录确认提交历史已经改变
    技术分享图片

  4. 此时HEAD处于了游离状态,所以我们需要把fork分支的HEAD重置到最后的commit
    技术分享图片

GIT rebase讲解

标签:现在   mit   start   游离   int   使用   com   head   注意   

原文地址:https://www.cnblogs.com/andyhe/p/9769936.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!