多人开发同一个项目且每人进度不一样,上线时间不一样 git 应该使用什么样的流程?

2019-12-27 02:11:26 +08:00
 Idealyouth

目前是有 dev、pre、master 分别是测试、预生产、生产

目前流程是这样的
1.每个人开发新功能时基于 master 切出新分支 feature_xxx 开发完成时合并到 dev
2.测试没问题再将 feature_xxx 合并到 pre
3.预生产没问题再将 feature_xxx 合并到 master

这样的流程感觉 pre 预生产没有存在的必要,预生产应当是直接合并到 master 上的

请问多人开发同一个项目,且每个人的上线时间点都不一样,还有当代码已经提交到预生产了,却又延迟上线,另一个人却提前上线的

这种应该使用怎样的 git 流程?

5137 次点击
所在节点    程序员
22 条回复
xavierchow
2019-12-27 21:17:01 +08:00
https://xavierchow.github.io/talk_git_branch_model/#/
^这是我在公司推行 git flow 时的一个讲座的资料, 有图比较容易懂,希望能帮助到你。
homecoming
2019-12-28 10:21:24 +08:00
不是说开发完了就会上线,多人合作,会有一个版本/迭代的概念。
功能开发拉 feature 分支,开发完了,给 QA 进行功能测试
功能测试完成,进入集成分支(版本分支),进行集成测试(功能开发完了,因为依赖方不 OK,或者其他问题,可能会延期,这种 feature 不进入集成,一旦进入集成,原则上必须这个版本上线。)
集成测试完成,进入 release (预发布)分支,进行线上验证,老版本兼容验证等。
验证完成,进入 master 分支,再次验证,然后线上灰度放量。

如果灰度过程中,发现问题,从 master 拉出 hotfix,修复、验证以后 ,合并进入 master.

这种模型,还可以进行多版本同时开发。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/632730

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX