ZF2应用程序:模块的最佳实践工作流程

时间:2013-11-15 20:10:51

标签: git svn zend-framework zend-framework2

我正在写一个ZF2应用程序。我从ZendSkeletonApplication开始,我将添加一些模块。我最终可能会在应用程序中使用数十个主要模块:

modules/
    Module1/
    Module2/
      ...
    ModuleN/

问题:我是否为每个模块保留了一个单独的存储库(和项目),或者我是否将它们全部卷入一个球并将根应用程序及其所有模块存储在一个存储库中?

奖金问题:我正在使用git进行源代码管理。如果最佳实践是使用单个存储库,那么为每个模块使用不同的分支是否有意义,或者只是将它们滚动到一个球并使用适当的提交消息进行提交?

2 个答案:

答案 0 :(得分:0)

  

我是否为每个模块保留了一个单独的存储库(和项目)

您是否可能希望在其他应用程序中(现在或将来)重用这些模块?如果是,请将它们保存在单独的回购中。否则你也可以把它们放在一起。

如果最终将它们分开,我建议使用Composer来管理它们。

PS:“我正在使用git for svn”我认为你的意思是你正在使用git进行源代码控制。 Git和Subversion都是源代码控制软件。

答案 1 :(得分:0)

模块更侧重于密切相关的一组活动,并在其他模块上自行执行(较少或不依赖)。如果模块保存在模块文件夹下的单独文件夹中(更具体到您的应用程序)或放在供应商文件夹(通用或第三方模块)下,它会很好用。

如果模块需要更改,您可以通过在应用程序中扩展模块并添加特定更改来创建新控制器或模型,从而使模块过载。

ZF2的另一个优点是模块结构与主应用程序结构相同,因此可以作为单独的应用程序开发,然后集成到任何所需的项目中