沙滩星空的博客沙滩星空的博客

Composer PHP包管理工具

查看全局镜像地址:

composer config -g repo.packagist

如以上命令报错 There is no packagist repository defined, 可按提示添加 -l 参数查看

composer config -g -l repo.packagist

查看所有全局配置

composer config -l -g

清除缓存

composer clearcache

1.全局切换到中国镜像:

composer config -g repo.packagist composer https://packagist.phpcomposer.com

composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/

2.局部切换到中国镜像(修改当前项目的 composer.json 配置文件。去掉-g即可):

composer config repo.packagist composer https://packagist.phpcomposer.com

3.取消镜像:

composer config -g --unset repos.packagist

4.切换回国外镜像:

composer config -g repo.packagist composer https://packagist.org

composer config -g repo.packagist.org

返回:

{"type":"composer","url":"https?:\/\/repo.packagist.org","allow_ssl_downgrade":true}

5.更新加载:

composer dump-autoload

6.全局安装插件:

composer global require "fxp/composer-asset-plugin:1.2.0"


腾讯云

composer config -g repos.packagist composer https://mirrors.cloud.tencent.com/composer/

华为云

composer config -g repo.packagist composer https://mirrors.huaweicloud.com/repository/php/

安畅网络

composer config -g repos.packagist composer https://cnpkg.org

安装composer(php 可执行文件在环境变量目录下):

echo @php "%~dp0composer.phar" %* > composer.bat

composer.phar 同级目录下新建文件 composer.bat。文件内容为:@php "%~dp0composer.phar" %*
"%~dp0composer.phar" 加不加引号,命令都能正常执行。

@ : @符号后的命令内容不显示,但命令执行完毕返回的内容正常显示。
%~dp0 : %~dp0代表的是bat文件所在的文件目录,强调bat的文件位置 ->盘符展开后是不可改变的
%cd% : 代表的是执行文件的当前目录,强调bat是在哪里启动的;->盘符展开后是可改变的
%* : 调用bat命令时,外部传入的命令参数


composer文档:https://docs.phpcomposer.com/04-schema.html

当我们运行composer install 将会读取composer.lock文件,进行更新依赖。如果composer.lock不存在或者里面没内容,会执行composer.json,会将最新版本的文件下载到vendor目录里,然后再去更新composer.lock文件。
我们都会把项目部署到github上,可是,当一个项目需要多人合作的时候,为了让所有人都使用与您正在使用的完全相同的依赖项。因此,为了保证这一点,composer官方是建议把composer.lock提交到git上。
每当去更新依赖的时候,都是基于composer.lock,去更新的。
注意:
composer.lock文件阻止您自动获取最新版本的依赖项。要更新到最新版本,请使用composer update命令,但是,一般不要使用update命令,因为update命令将更新所有的依赖到最新,这个动作是危险的,这样很有可能导致,最新类库和你以前写的东西冲突,你以前的代码不可用。


报错问题解决:

  [ErrorException]
  include(/home/vagrant/code/laravel-shop/vendor/endroid/installer/src/Installer.php): failed to open stream: No such file or directory

或者

[RuntimeException]
  Could not delete /home/vagrant/code/laravel-shop/vendor/kylekatarnls/update-helper/src/UpdateHelper:

运行命令加 --no-plugins 参数

composer install --no-plugins

配置和查看composer镜像 https://www.cnblogs.com/php-linux/p/11629451.html
composer.json和composer.lock作用 https://www.cnblogs.com/wmzll/p/12376107.html
Composer 国内加速:可用镜像列表 https://learnku.com/php/wikis/30594
未经允许不得转载:沙滩星空的博客 » Composer PHP包管理工具

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址