分支的概念
- 在版本控制過程中,可以同時推進多個任務,每個任務都可以建立單獨的分支。
- 以遊戲舉例,一款遊戲的運作作為主線分支,如果遊戲中出現bug,分出一個分支來修複遊戲中的bug,同時遊戲的主線分支不會受到影響,當熱修分支中的bug被修複後合并到主線分支中,産生新的遊戲版本。如果想為遊戲添加新的功能,也可以分出一個分支來進行設計,當功能成熟時即可合并到主線分支中。
- 分支底層邏輯:指針的引用
分支的好處
- 同時并行推進多個功能開發,提高開發效率
- 各個分支在開發過程中,其中一個分支開發失敗,不會影響到其他分支。
分支的操作
檢視分支
- 文法
git branch -v
- 示例
建立分支
git branch 分支名
切換分支
- 本質是隻針對的移動,
指向哪個分支,就在哪個分支上。HEAD
git checkout 分支名
修改分支
- 修改
分支下的檔案fixbug
- 檢視
中的檔案内容fixbug
-
master
删除分支
git branch -d 分支名
合并分支
git merge 分支名 // 把指定分支合并到目前分支上
解決沖突
- 合并分支時,如果同一檔案在兩個不同分支上都做了不同的修改,需要人為決定新檔案的内容。
- 編輯檔案,留下自己需要的部分
- 添加暫存區、送出本地庫 送出本地庫的時候不需要添加檔案名,否則會報錯
- 解決沖突後的檔案
分支類型
-
分支(主分支):穩定版本master
-
分支(開發分支):最新版本develop
-
分支(釋出分支):釋出新版本release
-
分支(熱修複分支):修複線上Bughotfix
-
分支(特性分支):實作新特性feature