我不了解create-project
在作曲家中是如何运作的。让我们以Laravel为例。
我可以使用以下命令安装此PHP框架:
composer create-project laravel/laravel --prefer-dist
这个命令为我安装了框架,在我的目录根目录中留下了一些文件夹:
加上一些文件。
但是当我只使用以下composer命令时:
composer require laravel/laravel --prefer-dist
composer install
然后,这只会安装vendor
文件夹。作曲家没有下载任何其他文件和文件夹。
为什么?有什么不同?当我使用create-project laravel/laravel
命令时,作曲家如何知道要获取的其他文件?为什么我在vendor
时只获取require laravel/laravel
文件夹?
答案 0 :(得分:14)
require
会向composer.json
文件添加依赖项,并将其加载到vendor
目录中,因为您已经正确注意到了。
create-project
将克隆依赖项,即将依赖项用作模板用于新项目。查看laravel/laravel
:https://github.com/laravel/laravel