我正在试验Composer并从
RubyGems / Bundler的背景出发,它表现出一些有趣的行为.
我试着创建一个新的Laravel项目,令我惊讶的是,我发现我最终得到一个超过70兆字节的供应商文件夹.
虽然Laravel确实提供了很多功能,但我发现大小是奇怪的,所以我检查了供应商文件夹的内容,发现它不仅包含代码,还包含单元测试,文档和整个git历史.对于Swiftmailer,我甚至发现了很多RFC的各种电子邮件标准.
虽然访问规范和存储库历史记录是方便的依赖关系,但它确实创建了一个相当耗时的部署过程,并将生产服务器与不相关的数据进行整合.
我明白,我可以写一个工匠命令来“构建”应用程序,并通过核对所有git历史来排除依赖关系,但它似乎是一个可能已经解决的问题的肮脏的解决方案.
所以问题是:是否有一种方法来安装作曲者依赖,所以只有运行(Laravel)应用程序所需的代码才能被下载?
更新:使用–prefer-dist
我发现您可以在创建新项目时通过–prefer-dist选项
composer create-project laravel/laravel my-new-project --prefer-dist
这使得Composer更喜欢压缩分发,直接从VCS获取源(例如GitHub)
这样可以让您的git历史记录减少到17兆字节的供应商文件夹.但是,规格,文档,例如仍然包括在内.所以如果有办法把它推到几兆字节是很好的.
我的供应商文件夹的大小约为17 MB.不知道你的安装出了什么问题,但70 MB不是它应该有的大小.我在使用Laravel 4.1.至于我remebmer,我将它从Github下载为.zip(
https://github.com/laravel/laravel/archive/master.zip),然后让作曲家做“安装”.
原文链接:https://www.f2er.com/php/132120.html