圖解git rebase

合并分支的另一種操作git rebase,又翻譯成變基

當我們同時在master和develop上做了修改领斥,兩個分支線都往前走了


如果這個時候用merge把master分支合并到develop分支闸天,就會是No-fast-foward的合并方式在develop分支上產生一個新的提交


后續(xù)我們去review develop分支的代碼的時候惭墓,會發(fā)現以前master分支上的別人提交的commit5 commit6 和develop分支上你提交的的commit7 commit8雜糅到了一塊兒咬腕,很不方便review你寫的代碼

但是册赛,如果你想讓develop分支歷史看起來像沒有經過任何合并一樣谁不,你可以用 git rebase命令

$ git rebase master

這個命令會把你的develop分支里的每個提交(commit)都取消掉坐梯,并且把它們臨時保存為補丁(patch)徽诲,這些補丁放到了.git/rebase目錄中刹帕,然后把develop分支更新為最新的master分支,最后把保存的這些補丁應用到develop分支上谎替。


當develop分支更新之后偷溺,它會指向這些新創(chuàng)建的提交(commit),而那些老的提交會被丟棄钱贯。 如果運行垃圾收集命令(pruning garbage collection)挫掏,這些被丟棄的提交就會刪除


如果rebase過程中有沖突,就先解決沖突秩命,然后執(zhí)行git rebase --continue 繼續(xù)變基

當我們使用git log來參看commit時尉共,使用git merge和使用git rebase 的commit的順序會不相同。

假設commit5提交于9:00AM弃锐,commit7提交于10:00AM袄友,commit6提交于11:00AM,commit8提交于12:00AM

對于使用git merge來合并所看到的commit的順序(從新到舊)是:commit9霹菊,commit8剧蚣,commit6,commit7旋廷,commit5鸠按,commit4,commit3饶碘,commit2目尖,commit1

對于使用git rebase來合并所看到的commit的順序(從新到舊)是:commit8Copy,commit7Copy扎运,commit6瑟曲,commit5,commit4绪囱,commit3测蹲,commit2,commit1? 其中commit8Copy提交只是commit8提交的克隆鬼吵,commit7Copy提交只是commit7提交的克隆

我們再通過一個動畫看下rebase的過程


想要學習其他開發(fā)技術扣甲,可關注我微信公眾號:

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子琉挖,更是在濱河造成了極大的恐慌启泣,老刑警劉巖,帶你破解...
    沈念sama閱讀 212,686評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件示辈,死亡現場離奇詭異寥茫,居然都是意外死亡,警方通過查閱死者的電腦和手機矾麻,發(fā)現死者居然都...
    沈念sama閱讀 90,668評論 3 385
  • 文/潘曉璐 我一進店門纱耻,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人险耀,你說我怎么就攤上這事弄喘。” “怎么了甩牺?”我有些...
    開封第一講書人閱讀 158,160評論 0 348
  • 文/不壞的土叔 我叫張陵蘑志,是天一觀的道長。 經常有香客問我贬派,道長急但,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,736評論 1 284
  • 正文 為了忘掉前任搞乏,我火速辦了婚禮波桩,結果婚禮上,老公的妹妹穿的比我還像新娘查描。我一直安慰自己突委,他們只是感情好,可當我...
    茶點故事閱讀 65,847評論 6 386
  • 文/花漫 我一把揭開白布冬三。 她就那樣靜靜地躺著匀油,像睡著了一般。 火紅的嫁衣襯著肌膚如雪勾笆。 梳的紋絲不亂的頭發(fā)上敌蚜,一...
    開封第一講書人閱讀 50,043評論 1 291
  • 那天,我揣著相機與錄音窝爪,去河邊找鬼弛车。 笑死,一個胖子當著我的面吹牛蒲每,可吹牛的內容都是我干的纷跛。 我是一名探鬼主播,決...
    沈念sama閱讀 39,129評論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼邀杏,長吁一口氣:“原來是場噩夢啊……” “哼贫奠!你這毒婦竟也來了唬血?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 37,872評論 0 268
  • 序言:老撾萬榮一對情侶失蹤唤崭,失蹤者是張志新(化名)和其女友劉穎拷恨,沒想到半個月后,有當地人在樹林里發(fā)現了一具尸體谢肾,經...
    沈念sama閱讀 44,318評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡腕侄,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 36,645評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現自己被綠了芦疏。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片冕杠。...
    茶點故事閱讀 38,777評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖眯分,靈堂內的尸體忽然破棺而出拌汇,到底是詐尸還是另有隱情,我是刑警寧澤弊决,帶...
    沈念sama閱讀 34,470評論 4 333
  • 正文 年R本政府宣布,位于F島的核電站魁淳,受9級特大地震影響飘诗,放射性物質發(fā)生泄漏。R本人自食惡果不足惜界逛,卻給世界環(huán)境...
    茶點故事閱讀 40,126評論 3 317
  • 文/蒙蒙 一昆稿、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧息拜,春花似錦溉潭、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,861評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至赞别,卻和暖如春畏陕,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背仿滔。 一陣腳步聲響...
    開封第一講書人閱讀 32,095評論 1 267
  • 我被黑心中介騙來泰國打工惠毁, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人崎页。 一個月前我還...
    沈念sama閱讀 46,589評論 2 362
  • 正文 我出身青樓鞠绰,卻偏偏與公主長得像,于是被迫代替她去往敵國和親飒焦。 傳聞我的和親對象是個殘疾皇子蜈膨,可洞房花燭夜當晚...
    茶點故事閱讀 43,687評論 2 351