我在 Symfony 2 Git 项目中处理依赖项的方式是这样的:
主要项目在Git下。外部依赖项(Bundles 和所有供应商的东西)进入 .deps 文件(或 composer.json)。然后我要么运行php bin/vendors install
要么composer install
安装依赖项。
依赖项将作为 Git 存储库安装,因此,如果我愿意,我可以cd
进入它们并在那里提交并在我有权限的情况下推送它。这使得编辑您自己的包变得更容易,无需克隆单独的包存储库就可以在那里进行更改。
我也有这个结构:
src\Company\SharedBundle
src\Company\ProjectBundle
whereSharedBundle
被简单地指定为依赖,目标安装路径在src\Company
.
我在SharedBundle
我所有的项目中都使用了。如果我需要对其进行更改,我会在其中一个项目中进行更改,然后我cd src\Company\SharedBundle
提交并推送它,并在我需要更改时从所有使用它的项目中提取。
使用deps
,您可以进行如下定位:
[AcmeAwesomeBundle]
git=http://github.com/johndoe/Acme/AwesomeBundle.git
target=../src/Acme/AwesomeBundle
如果你使用 Composer,你可能想要这个: http: //getcomposer.org/doc/01-basic-usage.md#autoloading