(5)删除分支
不能删除当前分支,只能删除其他分支
git branch -d b1
删除分支时,需要做各种检查
git branch -d test
git branch -D b1
不做任何检查,强制删除
(6)解决冲突
当两个分支上对文件的修改可能会存在冲突,例如同时修改了同一个文件的同一行,这时就需要手动解
决冲突,解决冲突步骤如下:
-
处理文件中冲突的地方
-
将解决完冲突的文件加入暂存区(add)
-
提交到仓库(commit)
冲突部分的内容处理如下所示:
(7)开发中分支使用原则与流程
几乎所有的版本控制系统都以某种形式支持分支。
使用分支意味着你可以把你的工作从开发主线上分离
开来进行重大的Bug修改、开发新的功能,以免影响开发主线。
在开发中,一般有如下分支使用原则与流程:
- master (生产) 分支
线上分支,主分支,中小规模项目作为线上运行的应用对应的分支;
- develop(开发)分支
是从master创建的分支,一般作为开发部门的主要开发分支,
如果没有其他并行开发不同期上线
要求,都可以在此版本进行开发,阶段开发完成后,
需要是合并到master分支,准备上线。
- feature/xxxx分支
从develop创建的分支,一般是同期并行开发,
但不同期上线时创建的分支,分支上的研发任务完
成后合并到develop分支。
- hotfix/xxxx分支,
从master派生的分支,一般作为线上bug修复使用,
修复完成后需要合并到master、test、
develop分支。
- 还有一些其他分支,在此不再详述,例如test分支(用于代码测试)、
pre分支(预上线分支)等等。
5、分支(分支操作练习)
(1)创建并切换到dev01分支,在dev01分支提交
- 创建分支dev01
git branch dev01
- [master]切换到dev01
git checkout dev01
- [dev01]创建文件file02.txt
touch file02.txt
ls
查看
- [dev01]将修改加入暂存区并提交到仓库,提交记录内容为:add file02 on dev
vi file02.txt
i
输入Esc
wq
保存退出
git add .
git commit -m ‘commie file02 on dev’
- [dev01]以精简的方式显示提交记录
git log
(2)切换到master分支,将dev01合并到master分支
- [dev01]切换到master分支
git checkout master
- [master]合并dev01到master分支
git merge dev01
- [master]以精简的方式显示提交记录
git log
- [master]查看文件变化(目录下也出现了file02.txt)
ls
(3)删除dev01分支
- [master]删除dev01分支
git branch -d dev01
- [master]以精简的方式显示提交记录
git log