产品开发小组
    我们会为每个产品经理的产品需求分配需要的开发人员,根据任务的轻重缓急,时间长短,分配不同的人员搭配和数量;
    由产品经理牵头和开发人员组成产品开发小组,该小组的产品负责人是产品经理,开发负责人从开发人员中选定一名开发人员,对接,配合辅助产品经理完成产品的生命周期:设计,开发,测试,上线等工作;
    产品经理:负责本次整个产品生命周期的推进,包括产品需求的管理,开发资源(人员,时间)的申请和协调,开发进度的管理跟进,开发过程的需求讲解,产品功能的测试验收和线上验收,后续给客户和内部运营人员的交付;完成本次产品交付后,释放开发资源,进入下一个产品需求待命;
    开发小组组长:根据产品生命周期,配合产品经理支撑产品需求和设计,管理分解开发任务,制定开发计划和流程,选定开发小组成员,管理开发资源(域名,ip,服务器,分支,端口,时间),制定和细化任务和时间结点,处理产品测试时产生bug:定位,分解,分配,协调开发人员,产品上线后的跟进和维护工作;完成交付本次开发工作后,进入下一个产品开发小组待命;
    开发小组成员:跟进产品经理的需求和开发组长的任务分配,完成本次任务开发,bug修改,上线工作,以及后续的维护和交付工作;完成交付本次开发工作后,进入下一个产品开发小组待命;
    每个开发人员根据开发需要都有可能成为下一个开发小组组长,或者开发小组的一名成员,望大家相互合作,共同按产品经理的要求完成开发任务;
    分支管理
    限于当前开发小组相对较多,如果都再dev分支上开发势必造成混乱和冲突,防止分支管理过于混乱,防止把未完成的功能开发发布到线上,同时防止已开发完成的功能无法及时上线;
    现在约定如下:
    image.png
    将分支分为4种分支进行管理,并进行如下建议:
    master分支:用于发布线上和线上同步
    dev分支:用于开发分支,测试,验收,也在此分支完成
    feature分支:新需求分支,用于开发小组开发新的功能需求
    hotfix分支:用于修改bug
    开发新需求:

    1. 开发小组先从dev分支新建一个feature分支,用于开发新的产品需求;
    2. 命名以新需求分支进行命名,开发完毕后合并到dev分支上进行并测试;
    3. 测试验收通过后,注意有feature分支合并到master分支进行发布上线;(目的是为了防止dev分支上有其他开发小组的测试未通过的代码)
    4. 线上验收通过后,该feature分支根据需要重新合并一份到dev和master,如有必要删除此feature分支;

    修改线上bug:

    1. 先从master迁出一个新hotfix分支
    2. 命名为bug名称然后修复bug,修复完成后,dev分支,验证是否修复;
    3. 测试验收后,注意hotfix分支合并到master分支,并进行线上发布;(目的是为了防止dev分支上有其他开发小组的测试未通过的代码)
    4. 线上验收通过后,该hostfix分支根据需要重新合并一份到dev和master,如有必要删除此hostfix分支;

    修改测试环境bug:

    1. 可以直接在feature分支进行修改,修复完成后合并到dev分支;
    2. 等待上线后一起合并到master分支;