今天,根据需要参考了网上部分资料(再次感谢各位大神的分享),把公司Git上的分支初步梳理了一遍,按照标准流程,重新构建了Git的所有分支,主要原因是因为,之前没开发一个功能,就会新建一个主分支以及若干子分支(虽然这样感觉操作起来提方便的~),但是这样的结果就是代码迭代在Git非常不明显,所以准备重新构建,在此记录如下:
1、常用分支
1> master分支
删除了原有的所有的分支,将最新的线上代码合并至master上,并设置为保护分支,并指定人员管理。master作为主干分支,所有正式上线的版本,都在这个分支上发布。
2> dev分支
在master分支的基础上分出dev分支,作为日常开发使用的分支。
命名规范建议:dev_function_yourname_yyyyMMdd
2、临时分支
1> 功能分支(feature)
主要用于临时开发某一个功能,临时分出去的分支,开发完成后合并至dev分支,并删除。
命名规范建议:f_function_yourname_yyyyMMdd
2> bug分支
此分之从master线上分支分出,用于紧急修复线上bug,修复完成,合并至master以及dev分支后删除。
命名规范建议:bug_function_yourname_yyyyMMdd
3> release分支(预发布分支)
这个分支存放的代码是预发布版本,放到预生产环境测试完毕后,修复已知bug,然后合并至mater和dev分支后删除。
3、合并规则:
1. master分支:只接受release分支以及bug分支合并
2. release分支:初始和生产一致,接受dev分支合并,不接受feature分支,bug分支合并
3. dev分支:理论来说接受两个分支合并:bug、feature feature分支:最终合并至dev分支并删除
4. bug分支:从master分出,完成后合并至master分支、dev分支后删除