我正在他们的网站上关注Laravel的安装我偶然发现了这条
composer create-project laravel/laravel --prefer-dist
那么,--prefer-dist
部分究竟是什么意思呢?我在他们的文件上看不到任何东西。
提前谢谢。
--prefer-dist
和--prefer-source
是作曲家的两个选项,包含在各种文档中,但缺乏适当的解释。
--prefer-dist
将尝试使用GitHub或其他API下载并解压依赖关系的存档(如果可用)。在大多数情况下,这用于更快地下载依赖项。它没有下载依赖项的整个VCS历史记录,应该更好地缓存它。此外,GitHub上的归档文件可能会排除一些你不需要的文件,因为你只需要使用带有.gitattributes exclude指令的依赖项。
--prefer-source
将尝试克隆并保留依赖关系的整个VCS存储库(如果可用)。当您希望在供应商/文件夹中克隆原始VCS存储库时,这非常有用。例如,你可能想处理依赖项——修改它们、分叉它们、提交拉取请求等,同时也将它们作为更大项目的一部分使用,因为这首先需要它们。
简单地说,--prefer-source
选项更喜欢创建一个"版本控制存储库"的包目录,这相当于您键入:
$ git clone ...
或
$ svn checkout ...
另一方面,--prefer-dist
选项更喜欢创建一个非"版本控制存储库",这相当于您键入:
$ git clone ... ; rm -fr dir/.git
或
$ svn export ...
请记住,这些只是首选项,如果使用不提供档案(如GitHub API)的VCS存储库需要依赖项,则唯一可用的选项是克隆存储库。
这里提供了所有功能:https://getcomposer.org/doc/03-cli.md#install
--preferred-dist:与--preferred源代码相反,composer将在可能的情况下从dist安装。这可以大大加快构建时的安装速度服务器和其他通常不运行的更新的用例供应商。如果您没有正确的设置。
根据链接:https://getcomposer.org/doc/03-cli.md#install
以下是问题的文档说明:-
--preferre-install:下载包有两种方式:source和dist。Composer默认使用dist。如果您通过--preferre-install=source(或--preferry-source),Composer将从源安装(如果有)。如果您想对项目进行错误修复并直接获得依赖项的本地git克隆,这将非常有用。要获得Composer为软件包的开发版本自动使用source的遗留行为,请使用--preferreinstall=auto。另请参阅config.preferend-install。传递此标志将覆盖配置值。