首页
/
每日頭條
/
圖文
/
git代碼合并的方式
git代碼合并的方式
更新时间:2026-04-17 10:27:49

在 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-04-17
廢鉛蓄電池處置
廢鉛蓄電池處置
今年,随着中央環境保護督察組加強對環保工作的“回頭看”,據統計,廣東、江蘇、遼甯、安徽、湖南、山西、廣西、北京等多地進一步開展了涉廢舊鉛蓄電池污染環境違法犯罪案件專項打擊整治工作,抓獲犯罪嫌疑人數百名。其中,涉案金額最高的達到上億元,非法收...
2026-04-17
戰錘40k暗潮值得預購嗎
戰錘40k暗潮值得預購嗎
Steam官方為我們分享了周中瘋狂優惠信息,《戰錘40K:戰争黎明》系列Steam最高優惠75%,即2.5折,很多遊戲白菜價即可入正,如《戰錘40K:戰争黎明年度版》,《戰錘40K:戰争黎明靈魂風暴》僅售9元,最新的《戰錘40K:戰争黎明3...
2026-04-17
撩人情話最暖心長句
撩人情話最暖心長句
在您閱讀本文前,您可以點擊右上方“關注”,以後您就可以免費收到“義務宣傳兵”每天推送的内容。感謝您的關注。朋友圈最撩人的18個情話短句:沒有一個愛字,卻滿滿是愛意!一、每遇到一處風景,每嘗到一道美食,每聽到一段笑話,都會想,要是你在就好了...
2026-04-17
花開則落月滿則虧
花開則落月滿則虧
切記無論你跟一個人關系有多好現在愛得有多麼你侬我侬也不要毫無保留地完全信任他更不要一心都撲在他身上把你的幸福完全依托于他因為很多時候人性都經不起生活的考驗當他翻臉無情時你可能除了是他離去路上的絆腳石外什麼都不是不管你們曾經多麼相愛為他付出了...
2026-04-17
Copyright 2023-2026 - www.tftnews.com All Rights Reserved