我如何修改我的composer.json以直接安装到src-dir(Symfony/src)中?
{
"name": "acme/example-bundle",
"type": "symfony-bundle",
"license": "MIT",
"require": {
"php": ">=5.3.2",
"symfony/framework-bundle": "2.1.*"
},
"suggest": {
"doctrine/doctrine-bundle": "*"
},
"autoload": {
"psr-0": { "Acme": "src/" }
},
"target-dir": "../../src/Acme/ExampleBundle"
}
将供应商包安装到 src dir 不是一个好主意,因为不应编辑供应商包,并且 src 目录适用于在开发过程中编辑的代码。
我想到的一个原因是你想修改这些包。 如果这是重点,你最好不要使用 Git 子模块,因为 Composer 只有一个单向流,这意味着更改只能来自供应商包的源,并且没有源的上游。
我将 Git 子模块用于项目中的捆绑包,这些捆绑包不是特定于项目的,因此驻留在它们自己的 Git 存储库中,但在项目中被积极开发。
PHP/Symfony 项目的 src 目录通常仅用于该项目的代码。作为依赖项安装的代码将进入供应商目录。
这样可以轻松跟踪哪些代码是项目本身的一部分,哪些代码在单独的存储库中维护。
因此,您不应将捆绑软件从单独的存储库安装到 src 目录中。Symfony中的捆绑包如果像许多核心框架包一样位于供应商目录中,则可以正常工作。