回覆列表
  • 1 # 使用者2202779135671

    任何branch想合併到master之前,必須把master更新到自己的branch,換句話說,先要把【master和branch分叉點-->master head】之間所有改變都checkout到你的branch,本地進行合併,合併完之後再push到master上。這樣保證了每次push都是針對master的head進行改變。合併的最小單位是行。如果你修改的檔案與別人在master上修改的檔案沒有重合,那麼合併沒有問題。如果出現一個檔案同時被branch和master修改了,那麼git會逐行檢查修改的內容。如果兩者修改的行之間沒有重疊,git將自動合併這些修改。例如原始檔:

    master上改成:x=10;y=2;z=30;你的branch上改成:x=1;y=20;z=3;那麼合併完之後就變成了:x=10;y=20;z=30;這些合併將自動完成。當然合併完之後不保證程式碼正確性,合併完了你還是需要進行檢查和測試。如果發生以下情況,那麼git就無法自動合併,需要你人工合併:1. 同一行被兩者進行了不同的修改(master把x=1改成了x=2,但是你改成了x=3)2. 兩者在同一行下面插入了不同的程式碼(git不知道哪個應該在前)3. 同一行被一者修改,被另一者刪除這時git會保留原始碼、master上的版本、你branch上的版本供你選擇。

  • 中秋節和大豐收的關聯?
  • 用電壓力鍋怎麼做無水焗菜餚?