Composer教程之常用命令
前言
Composer这个工具的命令有很多,但是常用的也就那么几个,接下来的内容,我将对常用的Composer命令进行总结。方便大家的学习。对于那些不常用的命令,在后续的使用过程中如果碰到了,再来查询Composer手册即可。
初始化init
实际上,很多时候,我们并不会手动的去创建这个composer.json文件,而是通过下列命令来完成composer.json创建:
composer init
同时这个命令还有多个可选参数,常用的如下表所示:
参数名称 | 参数说明 |
---|---|
--name |
包的名称 |
--description |
包的描述 |
--author |
包的作者 |
--homepage |
包的主页 |
比如我们可以这么用:
composer init --name "jellythink/composer_test" --description "Test" --author "Jelly Young <vipygd@126.com>"
安装install
install
命令我们更是常用了,一般我从Github或者国内的码云上克隆项目下来后,第一件事就是执行composer install
命令。install
命令从当前目录读取composer.json文件,处理了依赖关系,并把其安装到vendor
目录下。
如果当前目录下存在composer.lock文件,它会从此文件读取依赖版本,而不是根据composer.json文件去获取依赖。这确保了该库的每个使用者都能得到相同的依赖版本。
如果没有composer.lock文件,composer将在处理完依赖关系后创建它。
更新update
有的时候,我们修改了composer.json文件,此时我们就需要执行composer update
命令来获取依赖的最新版本,并且升级composer.lock文件。
当然了,如果我们并不想全部更新,只是想更新几个包,我们可以这样:
composer update vendor/package vendor/package2
创建项目create-project
我们可以使用Composer从现有的包中创建一个新的项目。这相当于执行了一个git clone
或svn checkout
命令后将这个包的依赖安装到它自己的vendor目录。
要创建基于Composer的新项目,我们可以使用create-project
命令。传递一个包名,它会为我们创建项目的目录。我们也可以在第三个参数中指定版本号,否则将获取最新的版本。比如使用create-project
命令来创建Laravel项目。
composer create-project laravel/laravel=5.4.* blog --prefer-dist
上面命令将创建一个blog的Laravel应用。
--prefer-dist 会从github 上下载.zip压缩包,并缓存到本地。下次再安装就会从本地加载,大大加速安装速度。但它没有保留 .git文件夹,没有版本信息。适合基于这个package进行开发。
--prefer-source 会从github 上clone 源代码,不会在本地缓存。但它保留了.git文件夹,从而可以实现版本控制。适合用于修改源代码。