场景:我正在使用Symfony 2.2。在我的所需包列表中还有一个我的github存储库,我们称之为"TestLib"。
我知道我可以定义github url作为Symfony的composer中的附加存储库。通过Composer从Github上下载TestLib。
问题:我无法提交到"TestLib"存储库,因为在"TestLib"目录下没有本地的。git目录。我猜作曲家是从Github获取zip,而不是克隆它。
所以我的问题是:有没有一种方法可以在Symfony的作曲家中指定。Composer应该克隆TestLib?
问题2:也许我的工作流程是错误的-所以如果你也有这种情况-你如何处理它?
将@dev
添加到包版本中也会克隆存储库。
{
"require": {
'package': '*@dev'
}
}
也可以在composer.json
source
设置为优先级{
"config": {
"preferred-install": "source"
}
}
如果我注意到供应商有问题,我通常会做的是rm -rf vendor/foo/bar
删除它,然后我运行composer install --prefer-source
将其作为git repo取回。
我所做的是将我的github repo添加到packagist.org然后我这样做:
composer require malhal/createdby dev-master --prefer-source
这似乎将require行添加到composer中。Json并将其作为git repo获取,不幸的是,这只能工作一次,所以如果您无法重用编写器。Json用于新安装,并且需要删除require行,然后记住再次执行相同的命令。这个命令还可以下载git的repo,这样你就不用再更新编译器了。