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

在 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-06-21
對被考察人的評價
對被考察人的評價
2021年6月,四川省宜賓市某事業單位工作人員牛玉全參加了全市“五方面人員”選拔,這一次經過層層選拔和嚴格的考察程序,他從事業單位正科級崗位調整到鄉鎮副科級崗位。對此,牛玉全很滿意,“現在我擔任三江新區宋家鎮副鎮長,這既是組織對我的信任,更...
2026-06-21
益母草和暖宮丸吃了幾天來月經
益母草和暖宮丸吃了幾天來月經
益母草和暖宮丸吃了幾天來月經?(江蘇)王長傑醫生提供益母草顆粒和艾附暖宮丸均為婦科臨床常用中成藥,很多女性盲目在藥店内購買來服用,或者一些藥店内的銷售人員亂推薦給患者服用,最終給一些患者帶來不小的危害那麼月經量多或淋漓不止時,是否可以服用益...
2026-06-21
異地換駕照需要多長時間
異地換駕照需要多長時間
異地換駕照需要多長時間?相信很多司機朋友們都有人在外地,但是駕駛證到期了的煩惱,回老家辦吧,太麻煩,在這邊辦吧,也不知道怎麼辦?,我來為大家講解一下關于異地換駕照需要多長時間?跟着小編一起來看一看吧!異地換駕照需要多長時間相信很多司機朋友們...
2026-06-21
awind無線投屏器
awind無線投屏器
與“移動“”無線”這兩個詞相關的智能設備給我們的生活、工作帶來了便捷不受束縛的體驗,就像手機、筆記本電腦平時承擔了我大部分工作娛樂項目,但有個遺憾是“大屏”與之不可得兼。當然,小屏上的内容投放到大屏可以通過多種方式。最近玩了點新鮮的,跟大家...
2026-06-21
Copyright 2023-2026 - www.tftnews.com All Rights Reserved