Git工作流程讨论
伊谢尔伦
伊谢尔伦 2017-05-02 09:37:28
0
3
623

  看了几个git的工作流,感觉都不太符合自己目前的流程。目前我们有三个环境:生产环境、测试环境、本地环境。开发人员在本地开发,push到测试环境,测试人员就在测试环境测试 验收。

  目前我们只有十几个人的小团队,没有一个具体的版本发布流程,所以也没有到哪天发布什么版本,哪个任务在什么时间完成之类的,每个人的工作更像是在做hotfix,做完一个小功能或者修复一个小bug就直接推送到develop分支,任务指向测试人员去测试环境测试,没问题了 直接把develop合并到master,发布! 这个流程在人少的时候还可以,人稍微多一点,就牵扯到 我有个功能要上线了 而另一个功能还在测试阶段,master和develop没法合并,只能等测试结束...

  基于功能分支的模式,好像可以解决上述的问题,切一个分支做功能或者修复bug,合并到develop去测试,测试通过后合并到master,这时候master就可以随时推送到生产环境。但是另一个问题,团队里的成员水平参差不齐,不能让每个人都有权限合并到master,需要有人去review代码,也就是说,合并到master这个操作只能由一个人或几个人去操作而不是全部,然而可能每天产生的分支就有很多,小到修改一行文字可能都是一个分支,手工去合并这些小分支又是一个很大的工作量.这个跟提交pr的方式有点类似,不够高效...

  有什么方法能让测试人员及时看到你的修改方便测试 ,又能随时随地的!有选择性的!往生产环境合并代码?

伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

全部回复(3)
仅有的幸福

和我们的工作流很像,不过我们有规定具体什么时间出版本,出了版本开发人员再自己的分支上开发,然后在合并的时候想主管发merge-request,主管同意了就到develop分支,然后测试也测develop,测试完没问题再上主分支。

世界只因有你

我觉得你这个问题很正常,比如A做了一个功能肯定是自己测试没有问题才能推develop分支然后测试测一下整体功能是否完整,无论谁发这个版本都需要经历这个过程。如果出现类似develop上有正在测试的代码,但是现在又有紧急要推的bugfix,一般有两种做法,一种是把develop上正在测试的代码cherry-pick出来,一种是用emergency分支。

阿神

git cherry-pick
这个命令可以选择性的合并提交。通知测试的话,可以配置github在merge之后自动发送邮件到指定邮箱。

git cherry-pick

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板