composer的安装与使用

相关: pear的安装与使用


composer安装与使用:

是 PHP 用来管理依赖(dependency)关系的工具。你可以在自己的项目中声明所依赖的外部工具库(libraries),Composer 会帮你安装这些依赖的库文件。

还提供了自动加载的支持。这就涉及到php-fig组织的PSR规范了, 目前比较通用的是PSR-4。

windos下安装composer:

安装参考
记得把C:\Users\hasee\AppData\Roaming\Composer\vendor\bin添加进全局变量path
使windos下能够全局使用composer命令.

centos下安装composer:

//下载phar二进制可执行文件: 
curl -sS http://getcomposer.org/installer | php
//移动到合理位置
cp composer.phar /usr/local/bin/composer

//添加全局composer
vim /etc/profile
PATH=/usr/local/bin:$PATH
export PATH
source /etc/profile

//尝试运行
composer

安装的ERROR与解决:

安装composer 提示php5.dll丢失
[解决:] http://www.jb51.net/dll/php5.dll.html
但是是dll版本与网页中放置的相反

将下载的源换为国内的:

//更换composer插件源, 部分源可能会出现需要密码验证
composer config -g repo.packagist composer https://packagist.phpcomposer.com

composer update命令的注意事项:

转载laravel创始人summer编写


composer使用解释:

基本命令解释:
composer install 
-- 如有 composer.lock 文件,直接安装,
否则从 composer.json 安装最新扩展包和依赖,并生成lock

composer update 
-- 从 composer.json 安装最新扩展包和依赖;

composer update vendor/package 
-- 从 composer.json 获取对应包的配置,如果不是最新则更新到最新;

composer require new/package 
-- 添加安装 new/package, 可以指定版本,如:
 composer require new/package ~2.5.
项目使用流程:

初始化项目后则可以开始使用composer来管理项目中的插件(项目初始化会携带一个项目目录下的composer.phar, cmd需要切换到项目目录下运行composer针对项目管控)。

如果是TP项目的话插件下载到liary下的vendor, 如果是laravel项目的话app/libs。

  • 流程一:在新项目中添加插件
    创建 composer.json,并添加依赖到的扩展包;
    运行 composer install,安装扩展包并生成 composer.lock;
    提交 composer.lock 到代码版本控制器中,如:git;
  • 流程二:项目协作者安装现有项目
    克隆项目后,根目录下直接运行 composer install 从 composer.lock 中安装 指定版本 的扩展包以及其依赖;
    此流程适用于生产环境代码的部署。

  • 流程三:为项目添加新扩展包
    使用 composer require vendor/package 添加扩展包;
    基于此次require 会更新composer.lock文件, 此时更新的文件也要更新其他环境, 并且重新在其他环境运行install。


Composer 的命令技巧

有效性检测 validate

在提交 composer.json 文件,和创建 tag 前,你应该始终运行 validate 命令。它将检测你的 composer.json 文件是否是有效的

composer validate

基于composer.json的修改更新composer.lock

当composer.json进行了了修改, 你增加或更新了细节信息,比如库的描述、作者、更多参数,甚至仅仅增加了一个空格,都会改变文件的md5sum。然后Composer就会警告你哈希值和composer.lock中记载的不同, 想要composer.lock根据composer.json的修改来更新哈希值而不出现警告, 并且不更新任何库, 可以使用以下命令。

composer update nothing

初始化-- create-project

这个命令会自动克隆仓库,并检出指定的版本。克隆库的时候用这个命令很方便,不需要搜寻原始的URI了。

composer create-project

//开始一个TP5 项目:
composer create-project topthink/think blog-tp5 --prefer-dist

//开始一个laravel项目:
composer create-project laravel/laravel blog-laravel

//开始一个TP3项目:
composer create-project topthink/thinkphp your-project-name

//开始一个TP5项目:
composer create-project topthink/think tp5 --prefer-dist

//开始一个 yii 项目:
composer create-project yiisoft/yii2-app-basic blog-yii --prefer-dist

Composer 安装插件时要求输入授权用户名密码的问题

composer require "overtrue/laravel-socialite:~2.0"
Authentication required (packagist.phpcomposer.com):
      Username:

解决方法:composer config -g repo.packagist composer https://packagist.laravel-china.org (换源)


你可能感兴趣的:(composer的安装与使用)