相关文章推荐
被表白的围巾  ·  Using Azure Active ...·  1 年前    · 
侠义非凡的拐杖  ·  php读取excel - 知乎·  1 年前    · 
有情有义的沙滩裤  ·  php - WAMP/XAMPP ...·  1 年前    · 

想像一下,分別有A檔案與B檔案,我們建立一個 new-feature 分支,在兩人操作不同分支的情況下,分兩種狀況:

  • 同事甲改A檔案,同事乙改B檔案,兩人改完後 merge,天下太平!
  • 同事甲改A、B檔案,同事乙改B檔案,兩人改完之後 merge,天下大亂!
  • 在狀況2中,Git 的邏輯要怎麼解決呢?
    按照時間嗎?先 Merge 的先贏?

    解決方法: 手動解決!

    例如:衝突發生,使用 merge 的時候 :

    ➜  git git:(master) git merge new-feature
    Auto-merging code.js
    CONFLICT (content): Merge conflict in code.js
    Automatic merge failed; fix conflicts and then commit the result.
    

    檔案會出現 :

    @@@@@@@@@@@@@ //master branch ======= !new feature //another branch(new-feature) >>>>>>> new-feature

    這時就可以直接在這個檔案修改成你要的最終版本,

    resolve conflict
    @@@@@@@@@@@@@
    !new feature
    

    然後改完之後存檔,直接 commit :

    commit -am "resolve confilcts"

    就解決啦!