使用composer require
加载库时,您将获得完整的软件包:
vendor/
autoload.php
example-author/
example-library/
docs/
(5 MB of HTML and pictures)
samples/
(10 MB of sample data)
test/
(150 files)
src/
Foo.php (20 KB)
Exception.php (1 KB)
如果您只想使用该库(而不是对其代码库做出贡献),则意味着部署完全不需要的目录树。
这是它的意思吗?
我更喜欢一种更接近作曲家年龄的设置,例如:
vendor/
autoload.php
example-author/
example-library/
Foo.php
Exception.php
......只要它是支持的方案。
答案 0 :(得分:2)
请务必从dist
下载,而不是从source
下载。
Dist: dist是包数据的打包版本。通常是发布版本,通常是稳定版本。
来源:该来源用于开发。这通常源自源代码存储库,例如git。你可以去取 当您想要修改下载的包时。
包可以提供其中任何一个,甚至两者。取决于 某些因素,例如用户提供的选项和稳定性 包装,一个将是首选。
如果正确配置了包,那么它们不应包含tests
中的docs
和dist
。您可以在github的包源中轻松检查这一点。应该有一个.gitattributes
文件,其中某些文件被排除在dist
存档之外,如下所示:
/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
Git文档的Exporting Your Repository章节对此进行了解释。
如果来源中没有.gitattributes
,那么您将不得不要求该软件包的作者自己包含一个或提出拉取请求。
当您的作曲家处于默认配置时,使用stable
个套件,首选安装为dist
。
"config": {
"preferred-install": "dist"
},
"minimum-stability": "stable"
然后作曲家从github下载一个zip文件,该文件是使用.gitattributes
中定义的过滤器创建的。
如果您想拥有dist
存档,则有两种选择。
"preferred-install": "dist"
--prefer-dist
composer update
选项
醇>
它们都使作曲家对{em>所有包使用dist
。
如果您希望仅使用example-author/example-library
的来源而不是所有包的dist
,请使用:
composer update example-author/example-library --prefer-dist
如果已存在,则必须删除dist
文件夹中的包文件夹(您希望从/vendor
更新)才能重新安装。否则它将坚持已经下载的版本。