我想安装doctrine/dbal
带有tests
和docs
文件夹的存储库。但是使用composer install
或composer update
我找不到如何做到这一点的方法?
它们被排除在 -> composer.json
文件中doctrine/dbal
:
"存档":{ "排除": ["!vendor", "tests", "*phpunit.xml", ".travis.yml", "build.xml", "build.properties", "composer.phar"]}
有没有办法强制安装?我认为必须有一种方法可以下载它,例如在我的本地计算机上运行测试。
编辑:
我也尝试使用require-dev
但composer update
之后doctrine/dbal
包中没有tests
文件夹。
无论如何,composer.json
文件中exclude
的选项与您的问题无关。当您从作曲家包中创建存档时,将使用此选项。
那么为什么有些文件夹被排除在外呢?
/docs
和/tests
文件夹被排除在.gitattributes
文件中:
/tests export-ignore
/docs export-ignore
.gitattributes export-ignore
.gitignore export-ignore
.gitmodules export-ignore
.travis.yml export-ignore
build.properties export-ignore
build.xml export-ignore
phpunit.xml.dist export-ignore
run-all.sh export-ignore
composer.lock export-ignore
那么如何下载它们呢?
首先,作曲家可以在您composer install
或composer update
时从两个不同的来源获取其数据:
Dist:dist 是包数据的打包版本。通常是已发布版本,通常是稳定版本。
源:源用于开发。这通常来自源代码存储库,例如 git。您可以获取 当您要修改下载的包时,请执行此操作。
包可以提供其中之一,甚至可以同时提供两者。根据 某些因素,例如用户提供的选项和 包,一个会优先。
作曲家的默认值
当您的作曲家默认配置为使用stable
包并且首选安装为 dist
时。
"config": {
"preferred-install": "dist"
},
"minimum-stability": "stable"
然后作曲家从 github 下载一个 zip 文件,该文件是使用 .gitattributes
中定义的过滤器创建的。这使作曲家更快。
使作曲家从源下载
如果您想拥有来源,您有两种选择。
- 制作
"preferred-install": "source"
- 在
composer update
上使用--prefer-source
选项
它们都使作曲家对所有软件包使用source
。如果您希望只有doctrine/dbal
源而不是所有包的源,请使用:
composer update doctrine/dbal --prefer-source
注意
您必须删除/vendor
文件夹中的doctrine/dbal
文件夹(或要从源更新的任何文件夹)(如果已存在)才能重新安装。