分支管理
约 650 字大约 2 分钟
2025-06-06
几乎所有的版本控制系统都以某种形式支持分支。 使用分支意味着你可以把你的工作从开发主线上分离 开来进行重大的 Bug 修改、开发新的功能,以免影响开发主线。
查看本地分支
git branch
创建本地分支
git branch 分支名
切换分支(checkout)
git checkout 分支名
我们还可以直接切换到一个不存在的分支(创建并切换)
git checkout -b 分支名
合并分支(merge)
一个分支上的提交可以合并到另一个分支
git merge 分支名
删除分支
不能删除当前分支,只能删除其他分支
git branch -d 分支名 # 删除分支时,需要做各种检查
git branch -D 分支名 # 不做任何检查,强制删除
解决冲突
当两个分支上对文件的修改可能会存在冲突,例如同时修改了同一个文件的同一行,这时就需要手动解决冲突,解决冲突步骤如下:
处理文件中冲突的地方
将解决完冲突的文件加入暂存区(add)
提交到仓库(commit)
冲突部分的内容处理如下所示:
开发中分支使用原则与流程
在开发中,一般有如下分支使用原则与流程:
- master(生产)分支
线上分支,主分支,中小规模项目作为线上运行的应用对应的分支;
- dev(开发)分支
是从 master 创建的分支,一般作为开发部门的主要开发分支,如果没有其他并行开发不同期上线 要求,都可以在此版本进行开发,阶段开发完成后,需要是合并到 master 分支,准备上线。
- feature/xxx(功能)分支
从 develop 创建的分支,一般是同期并行开发,但不同期上线时创建的分支,分支上的研发任务完 成后合并到 develop 分支。
- hotfix/xxxx 分支
从 master 派生的分支,一般用于紧急修复线上 bug,修复完成后需要同时合并到 master 分支和 develop 分支。
练习
创建一个新分支 dev
- git branch dev
切换到 dev 分支
- git checkout dev
在 dev 分支上添加文件并提交
touch dev.txt
git add dev.txt
git commit -m "add dev.txt"
切换回 master 分支
- git checkout master
合并 dev 分支到 master 分支
- git merge dev
删除 dev 分支
- git branch -d dev