Branch 概念
- 兩邊可以各做各的事互不干擾,最後再合併。
合併概念
- 上下兩分支可分別想像是名為 main & new-feature 的不同資料夾,然後兩分支資料夾就分別產生不同的 commit 子資料夾。
- 但此例上下兩分支其實可以直接合併,因為 main 分支中間並沒有多的 commit,所以 new-feature 新增的兩個 commit 可以直接合併下去。
Git branch 操作指令
git branch -v
: 查看目前的分支狀況。git branch new-feature
: 建立分支,開發新功能的必備好習慣。git branch -d new-feature
: 移除分支。git checkout new-feature
: 在分支間轉移。git checkout -b new-feature
: 建立新的 branch 的同時切換到該 branch。git merge new-feature
: 把 new-feature 這個分支合併進來到我現在所在的分支,所以需要先git checkout
切換到我要把合併其他分支進來的分支。
當 merge 時發生 conflict 衝突
- 當兩分支都有做 commit 後,在 merge 的時候會顯示 conflict 衝突,然後找出有紅字 both modified 的衝突檔案,就可以打開該檔案進行手動修改,將衝突修改完再 commit 即解決衝突並成功合併。