Vincent Driessen 于2010年提出的分支模型,可以说是最早、最全面的分支管理策略了,后续出现的分支管理策略基本都是基于 git flow 进行修改的。这里先要明确几个基本概念
从上图可以看出,使用 git flow 开发步骤还是比较多的:
省略去了大部分分支类型,仅保留了 master 和 feature 分支。
暂时无法在飞书文档外展示此内容
引入了生产分支和环境分支,总体上与 github flow 区别不大。
环境分支很好理解,即不同环境使用不同的环境分支。
生产分支则类似于 release 分支,但是是从 master 拉取出来,用来代表生产部署的代码版本。
与 github flow 差别很大,认为应该在 master(主干)上开发,使用 release 分支进行发布,理由是短期的开发任务不需要整的那么麻烦,测试什么的在提交到 master 之前做好就行了。
基本上就等同于单分支开发了,用的比较少。
其实分支模型大差不差,git flow 最全面, github flow 最简化。
基本上,你可以使用 git flow 满足任何开发团队的节奏,也可以在此基础上去掉一些自己不需要使用的分支。github flow 之所以能这么简单,主要是因为 feature 分支开发周期较长,且有健全的持续集成、持续部署工具保证 feature 分支合并到 master 后不会影响 master 的可用性,要求不可谓不高。
其实,总结下来,一个健全的开发团队的分支管理应该满足以下条件:
很多开发的 git commit message 写的是一团糟,要么是流水账,要么货不对板。
commit message 没有绝对的好坏,但是有相对的优劣,一个团队要遵守一致的填写规范。一个好的 commit message 应该要尽可能简洁、保留关键信息。
我们可以先将 commit 分为几类:
先用分类来概括提交内容,再用一段简短的文字来描述,如:
feat: 考试试卷CRUD fix: 试卷完成功能失败问题 refactor: 使用令牌桶替换默认限流算法 ....
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。