我使用git和子模块,我很难弄清楚如何组织我的文件.
我用 PHP开发,并使用单元测试.所以现在,我将这个组织用于每个模块:
我用 PHP开发,并使用单元测试.所以现在,我将这个组织用于每个模块:
> src /
>测试/
这似乎是个好主意,但问题是,当我对项目执行“git submodule add”时,我会有这样的路径:
项目/模块/新闻/ src目录/ index.PHP文件
src /文件夹确实存在问题.
只要自动加载器能以某种方式找到您的文件,您的文件夹布局就无关紧要了.如果使用PEAR约定将类名映射到其源文件,则可以将src目录添加到包含路径或堆叠第二个自动加载器.然后你不必将src添加到类名.
PEAR约定的替代方法是使用文件和类之间的静态映射.有a tool that can automatically generate such an autoloader for you at GitHub.
静态自动加载器方法也在PHP Project Wizard中使用.该工具将创建src和测试文件夹,包括your phpunit config和build file to connect your project with Jenkins CI.这是一个方便的包.
至于包含子模块,请考虑将它们放入lib或ext文件夹中.可以在phpdox project at GitHub中找到该外观的示例.确保您还查看main bootstrap file以了解如何包含各种自动加载器.