首页
/
每日頭條
/
圖文
/
git代碼合并的方式
git代碼合并的方式
更新时间:2026-04-09 06:22:00

在 git 中整合來自不同分支的修改主要有兩種方法:合并(merge)以及 變基(rebase)

合并(merge)

git代碼合并的方式(Git進階合并與變基)1

merge流程圖

merge的原理是找到這兩個分支的祖先commit,在兩個分支最新的commit進行三方對比合并。

注:git會對每個文件進行一個哈希計算,這個值一樣的話說明文件沒有改動過

上圖中,共同的祖先commit2,master最新commit6,develop最新commit5,merge會基于2,5,6這三個commit進行對比

  1. commit6和commit2對比,如果文件的哈希值不一樣,同時commit5和commit2對比,發現一樣,說明隻有commit6修改了這個文件,這種情況直接合并,不會提示
  2. commit6和commit2對比,如果文件的哈希值不一樣,同時commit5和commit2對比,哈希值不一樣,說明兩個分支都對同一個文件修改了,則提示沖突,需要我們手動merge

最後合并完後會生成一個新的commit7

變基(rebase)

上圖的另一種合并方法:在develop分支上提取出commit4,5的修改,然後在master的最新的commit6的基礎上應用commit4,5的修改,這種方式就是變基(rebase)。你可以使用 rebase命令将提交到某一分支上的所有修改都移至另一分支上,就好像“重新播放”一樣。

git代碼合并的方式(Git進階合并與變基)2

rebase結果

這裡新增了commit4,5,在merge時有可能都會有沖突,這裡有可能需要手動merge兩次,因為rebase時可能在提交commit4的時候提示沖突一次,在提交commit5的時候又沖突一次

總結
  • rebase:合并後分支圖譜好看,一條線,但合并過程中出現沖突的話,比較麻煩(rebase過程中,一個commit出現沖突,下一個commit也極有可能出現沖突,一次rebase可能要解決多次沖突);
  • merge:合并後分支圖譜不好看,一堆線交錯,但合并有沖突的話,隻要解一次就行了;

一般多人合作的時候優先考慮合并,一個人玩的時候可以用變基。

,
Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
自制工藝品怎麼做(家庭自制工藝品)
自制工藝品怎麼做(家庭自制工藝品)
                                                                                                                                                                                    ...
2026-04-09
狂飙老默扮演者發抖音告别翠玉軒(對話狂飙老默馮兵)
狂飙老默扮演者發抖音告别翠玉軒(對話狂飙老默馮兵)
  來源:【海報新聞】   大衆網·海報新聞記者 李子驕 張海振 報道   觀衆真正看到演員馮兵,是從《狂飙》開始。在劇中,他飾演人狠話不多的陳金默(老默),一位冷血的“棒棒糖殺手”,也是一位疼愛女兒的父親。他的一個“眼神殺”,幾乎一秒之内,就讓觀衆入戲。   馮兵出生在山東淄博,畢業于北京電影學院,并且還是一名有着十六年軍齡的退役軍人,軍旅經曆造就了他身上...
2026-04-09
mba培訓班哪個好(mba培訓班哪個好)
mba培訓班哪個好(mba培訓班哪個好)
  作為含金量較高、對大家職業發展有一定影響的MBA/EMBA考試,不少考生都會出現考前"抱佛腳":"時間都去哪裡了"的感歎。   MBA聯考不同于其它研究生的考試,MBA/EMBA碩士的培養目标與其它技術專業有所不同,因此,在備考方向和考試内容、報考條件,也會有一定的區别。   對于很多已經參加工作的MBA考生,大家每天的學習時間有限或者基礎不一,因此,在...
2026-04-09
北魏墓志銘價值(河南一農民在鋤地時)
北魏墓志銘價值(河南一農民在鋤地時)
  著名學者吳組缃教授生前說過:《紅樓夢》的思想藝術成就被人們認識到的隻是‘冰山一角’,藏在水下的更多。   說起“冰山一角”一詞,不僅可以用于對《紅樓夢》的研究,對于書法的研究也是如此,中國書法有着千年多的曆史,雖然我們能通過各種載體領略到前人書法的風采,但是除了已知的書法作品,還有很多人優秀的書法作品埋藏在隐秘的角落,不為人知。      北魏《元倪墓志...
2026-04-09
思念到極緻的詩詞(七絕情癡)
思念到極緻的詩詞(七絕情癡)
  卧醉青山兩相知,   夏蟬井蛙亂山姿。   相思研磨賦詩吟,   道盡世間悲與癡。               ,
2026-04-09
Copyright 2023-2026 - www.tftnews.com All Rights Reserved