Git存储库结构和工作流程

时间:2015-09-11 12:02:28

标签: git git-flow

如何最好地构建我们的Git和工作流程?我很擅长在多用户环境中管理Git并且来自Perforce背景,所以我想知道是否有人可以提供帮助

33k +数据库对象跨越大约1000个不同的功能区域。

300个用户同时在17个项目上工作。

每个项目都有自己的开发周期,使用瀑布和scrum \ agile。

典型的项目涉及6到10个功能区域,但其中一些区域几乎一直在更新

希望能够进入生产阶段并变得更加敏捷

我们希望跟踪较低级别的版本,以帮助RM的跟踪更改,并识别和传达数据流和责任区域的变化

项目使用本地数据库系统,但对于回归和性能测试,它们使用2个必须与生产相同的共享环境

我们想引入连续构建和连续回归测试

我建议为每个功能区域引入一个单独的存储库

我建议使用Gitflow Workflow

我建议修改Gitflow脚本,使跨多个存储库的管理功能成为其行为的一部分

我已经阅读了很多关于子模块和子树的内容,但是我们并不认为其中任何一个都适用,因为我们在多个分支中做所有事情。

任何sugestions或指针将非常感激

1 个答案:

答案 0 :(得分:0)

我们在项目中使用this workflow,但有些不同:

  • develop中添加分支时,我更喜欢重新定位而不是合并,因为使用squash我们可以在每个问题上进行一次提交,从而提供更清晰,更线性的历史记录。
  • 我们在需要时使用一些预推钩,以便在将我们的工作推向远程之前执行单元测试,以避免其他开发人员遇到我们的代码问题。

同样在你的情况下我更喜欢subree模块而不是子树,因为子树在存储库中设置了子存储库的所有源代码,而子模块将它分开。

我创建了您需要的所有存储库。开发人员应该在存储库上进行开发,并且必须有一些主管将单个存储库集成到更大的存储库中,管理和处理问题。