导读 大家好,小宜来为大家讲解下。branchcode,branchCodeKey这个很多人还不知道,现在让我们一起来看看吧!今晚项目上线,早上通知项目上线的需...

大家好,小宜来为大家讲解下。branchcode,branchCodeKey这个很多人还不知道,现在让我们一起来看看吧!

今晚项目上线,早上通知项目上线的需求要求各同事负责自己的模块,,竟然还有同事不会打上线标签……

仓库的分支(Branch)规范,影响到每个团队的工作流的一致性;标签(Tag)便于开发团队、测试团队和其他团队识别每个项目的版本,特别是在协同处理线上问题的时候,大家可以非常清楚地知道线上运行版本和代码库的对应关系。因此在制作的时候,主要考虑几个因素:

一是要有一定的规则,方便持续集成CI(自动化构建、测试、分布等)

二是要有一定的自由度,以适应不同团队的内部协作灵活性

要清晰规整,不要参差不齐难以识别基于我们当前团队的协作能力和提交代码的质量水平,并考虑方便持续集成CI(自动化构建、测试、发布),我们约定下列常驻Branch:

develop 分支:顾名思义就是持续开发的分支,我们希望每个开发组都在这个分支上保持线性的持续小步迭代,正常的CodeReview WorkFlow和开发级的自动CI也在这里进行。

当开发完一个迭代(Sprint),开发小组有信心转测时,就将代码合并到 release 分支,并要求打一个alpha级的Tag(如5.2.0-alpha)

release 分支:顾名思义即用于发布过程的分支,包括开发转测(实际上我们认为这里的测试集成测试)、测试和BugFix以及发布上线的过程,当发布成功时要打一个发布beta Tag(如

5.2.1-beta),并将代码合并到一起 master 分支

master 分支:即有质量保证的、可安全运行的分支,禁止直接代码提交,避免被污染,仅用与代码合并和归集,在这个分支上的代码应该永远是可用的、稳定的。当需要拉一个特别的开发分时,应该基于 master。

我是锦鲤鱼,请关注我,不定期分享Java程序猿的点点滴滴#我要上微头条# #程序猿#

本文branchcode,branchCodeKey到此分享完毕,希望对大家有所帮助。