首页
/
每日頭條
/
圖文
/
git代碼合并的方式
git代碼合并的方式
更新时间:2026-07-14 19:09:48

在 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
推荐阅读
魅藍6t發布會笑噴
魅藍6t發布會笑噴
“我李木楠就是失業,沒人買,發不出工資,也不會做後置指紋的手機!”“魅藍6T了解一下。”我已經要對李楠先生路人轉粉了,因為他不管從任何方面都是目前中國智能手機行業中獨一無二的,對營銷有最深刻獨到見解的人。和隔壁靠言行出位招惹眼球的羅老師比起...
2026-07-14
擺攤養家的感受
擺攤養家的感受
時間真快今天都13了,過年還有27天了!因為沒有單位,沒有其他收入,自由職業,所以今年算沒有賺錢,一直在吃老本,疫情原因一直沒有出門,所以都是家裡附近轉轉,馬上過年,最近小夥伴都是再問怎麼兼職,做點收入,搞點外快,我呢最近擺了地攤,感覺還行...
2026-07-14
懶人都會做的咖喱魚丸
懶人都會做的咖喱魚丸
大家好,今天我們跟大家分享的美食教程是怎樣用比較簡單的方法就能制作出吃u膩的咖喱魚丸。喜歡這道美食的朋友歡迎點擊收藏或轉發。大家也可以跟着教程一起來試做這道簡單的美食。首先我們準備魚,隻取魚尾的部位,把魚骨給剃幹淨。将剁好的魚肉放碗裡,加入...
2026-07-14
保濕水乳精華面霜的正确使用方法
保濕水乳精華面霜的正确使用方法
保濕水乳精華面霜的正确使用方法?每天晚上洗完臉先塗水,再抹眼霜,精華,再用晚霜每隔兩天的早晨,會敷一張面膜補水,再用水乳……這種“疊羅漢”試的皮膚保養真的必要嗎?我們的皮膚到底需要什麼樣的保護呢?記者進行了采訪,我來為大家科普一下關于保濕水...
2026-07-14
逃離塔科夫倉庫密閉門在哪
逃離塔科夫倉庫密閉門在哪
[PConline雜談]衆所周知,蘋果一些新的Macbook産品線不僅取消了Esc鍵,而且還對通常用于多數計算機鍵盤的功能鍵布局進行了變更——它們有的被轉移到了TouchBar,有的則被永久取消掉了。那個常标配于每個鍵盤的Esc鍵,眼看着卻...
2026-07-14
Copyright 2023-2026 - www.tftnews.com All Rights Reserved