首页
/
每日頭條
/
圖文
/
git代碼合并的方式
git代碼合并的方式
更新时间:2026-02-28 08:10:03

在 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
推荐阅读
蘇州樂園森林水世界全天攻略
蘇州樂園森林水世界全天攻略
蘇州高新區蘇州樂園森林水世界海島音浪季于6月10日開啟,活動從6月10日持續至8月31日,浪花電音趴、嗨森水花大戰、糖果超甜女孩迎賓秀等千餘場海洋風演藝、十餘項明星水上項目、近百種花樣舌尖美食,一系列精彩紛呈的文旅活動就在今夏與蘇州樂園一起...
2026-02-28
如何做到發揮統籌作用
如何做到發揮統籌作用
貫徹落實“2·23”重要講話精神系列評論之一“統籌”就是通盤考慮、統一籌劃的意思。統籌不僅是重要的思想方法,更是重要的工作方法。搞好統籌謀劃,是解決好思想認識問題的基本前提。進一步提高對“統籌”的認識,就是要按中央的決策部署、整體謀劃、工作...
2026-02-28
鄧倫和李沁是同一個公司嗎
鄧倫和李沁是同一個公司嗎
近期,鄧倫與李沁傳出不少绯聞,李沁工作室原本有李沁的單身聲明,直言什麼時候找到男友什麼時候撤下。如今李沁的單身生命不僅被撤下,還與鄧倫的工作室換成了統一風格的背景,網上也傳出兩人交往的消息。不過也有網友表示兩人的戀情是公司的炒作,鄧倫和李沁...
2026-02-28
福克斯直列四缸車型
福克斯直列四缸車型
新款福克斯正式亮相了,新車預計在7月正式上市,全新的外觀設計隻是開胃小菜,換裝1.5T四缸發動機才是最大的改變,除了ST-Line車型外還增加了SEdition車型緻敬經典的福克斯RS車型。新款福克斯的上市可以說為福特注入了一針強心劑,也為...
2026-02-28
兒子十歲媽媽緻辭
兒子十歲媽媽緻辭
兒子十歲媽媽緻辭?祥雲漫天,吉日良辰上帝選擇了這一天的把你賜福給我媽媽是多麼幸運能做你的媽媽我感恩從此每一年的這一天對于媽媽來說變得美好而有意義,現在小編就來說說關于兒子十歲媽媽緻辭?下面内容希望能幫助到你,我們來一起看看吧!兒子十歲媽媽緻...
2026-02-28
Copyright 2023-2026 - www.tftnews.com All Rights Reserved