首页
/
每日頭條
/
圖文
/
git代碼合并的方式
git代碼合并的方式
更新时间:2026-05-26 11:09:02

在 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-05-26
家用冰箱選購要注意什麼
家用冰箱選購要注意什麼
很多人買冰箱都存在一個誤區——買大品牌的就行。我當時也是這樣認為,結果花大價錢買回去的冰箱,沒用多久就出現結霜,串味的問題。第二次買冰箱的時候,我就吸取了教訓,從這5點出發選擇冰箱,買回去的冰箱質量杠杠的。那麼買冰箱要注意什麼呢?下面我來告...
2026-05-26
财務報銷制度及報銷流程規定
财務報銷制度及報銷流程規定
其實有很多時候,其他部門的同事根本就不理解我們作為财務人員報銷有多難!老是抱怨我們故意卡他們的報銷,還吐槽我們工作效率低!其實并不是這樣的,我們也挺冤的,因為财務費用報銷也是需要有一套規章制度的。今天就給大家分享一套财務費用報銷制度,從制度...
2026-05-26
硬筆行書作品清平樂會昌
硬筆行書作品清平樂會昌
硬筆行書作品清平樂會昌?東方欲曉,莫道君行早,踏遍青山人未老,風景這邊獨好會昌城外高峰,颠連直接東溟,戰士指看南粵,更加郁郁蔥蔥,接下來我們就來聊聊關于硬筆行書作品清平樂會昌?以下内容大家不妨參考一二希望能幫到您!硬筆行書作品清平樂會昌東方...
2026-05-26
ahc是黃金面膜
ahc是黃金面膜
ahc黃金錫紙面膜是很受歡迎的一款面膜,使用之後皮膚非常的滋潤,那麼ahc黃金錫紙面膜怎麼用呢?下面我們一起來看看吧!Ahc這種新型的面膜,在安全上應該是比較讓你受關注的一點AHC黃金錫紙面膜的價格比較親民,除了高濃度的黃金成分外,輔助添加...
2026-05-26
Copyright 2023-2026 - www.tftnews.com All Rights Reserved