首页
/
每日頭條
/
圖文
/
git代碼合并的方式
git代碼合并的方式
更新时间:2026-08-26 01:45:30

在 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-08-26
嚴格落實屬地管理的原則
嚴格落實屬地管理的原則
嚴格落實屬地管理的原則?有了明确權責邊界,基層治理就能責任分明、有序運轉;有了更多資源支持,基層幹部就能更有底氣、更加主動,下面我們就來說一說關于嚴格落實屬地管理的原則?我們一起去了解并探讨一下這個問題吧!嚴格落實屬地管理的原則有了明确權責...
2026-08-26
胡夏的經典十年歌詞
胡夏的經典十年歌詞
老狼演唱的歌曲《同桌的你》是90年代标志性的文化符号之一,貫穿了幾代人的青春回憶,也填補了中國内地優秀校園歌曲的空白,校園民謠這一流派從此正式進入人們的視野。簡單的旋律,淺白的歌詞,讓無數經曆過中學時代的人感慨不已也懷念萬分。這首1994年...
2026-08-26
小孩咳嗽三分治療七分護理
小孩咳嗽三分治療七分護理
咳咳,咳咳咳咳,咳咳咳咳咳咳......小兒咳嗽老不好,怎麼辦?今天聊聊孩子生病咳嗽時的居家護理問題。俗話說“三分治,七分養”,孩子咳嗽期間家長做好以下幾點,可以起到事半功倍的效果。具體應注意以下幾點:多通風。保證孩子處于一個潔淨、新鮮的空...
2026-08-26
街頭烤冷面醬料配方
街頭烤冷面醬料配方
街頭小吃烤冷面自己在家也能做,配料簡單,吃得真過瘾我不知道烤冷面是不是東北才有的小吃,反正我去南方的時候是沒有看見這個烤冷面,就算是吃到了也覺得沒有家裡面的烤冷面好吃。在北方,烤冷面可是現在街頭最受歡迎的美味小吃了,口感松軟還勁道,醬香味撲...
2026-08-26
Copyright 2023-2026 - www.tftnews.com All Rights Reserved