找回密码
 立即注册
搜索
查看: 862|回复: 3

[其它] 解决composer安装太慢的问题以及composer使用方法

  [复制链接]
发表于 2023-3-3 16:04 | 显示全部楼层 |阅读模式

对于composer require和composer install,composer update大家都懂的,官方服务器在国外,导致这些需要拉取包的时候非常非常慢。

一般就是类似这样的输出,然后就是无穷无尽的等待:

Loading composer repositories with package information
Updating dependencies (including require-dev)

 

composer命令带上-vvv

首先,建议在使用composer命令时带上-vvv参数,这个可以输出更多详细信息,让你知道到底是卡在哪一步了,有目的性的排查问题。

一般可以通过更换国内镜像,或者使用代理来操作改善composer速度。

更换国内的asset-packagist

把项目的composer.json文件中的仓库地址修改成https://asset-packagist.cn。

"repositories": [
    {
        "type": "composer",
        "url": "https://asset-packagist.org"
    }
]

修改成:

"repositories": [
    {
        "type": "composer",
        "url": "https://asset-packagist.cn"
    }
]

 

更换国内镜像

各大云厂商的PHPComposer全量镜像,加上之前的全量镜像资源:
2019年7月5日更新

阿里云

使用说明:https://mirrors.aliyun.com/composer/

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

华为云

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

腾讯云

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

cnpkg

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

phpcomposer

Composer官方镜像,速度较慢,国外服务器用这个!!!

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

 

使用代理:

使用代理前,将镜像切换成官方镜像,也就是上面最后一个,然后在你的代理程序上开一个本地代理端口(局域网代理也行),然后配置一下终端代理:

Linux:

export http_proxy=http://127.0.0.1:1080
export https_proxy=http://127.0.0.1:1080

Window命令行:

set http_proxy=http://127.0.0.1:1080
set https_proxy=http://127.0.0.1:1080


原文地址:https://blog.csdn.net/lovelessdream/article/details/115794673

 楼主| 发表于 2023-3-3 16:20 | 显示全部楼层

升级本地的compose到最新稳定版

由于某种原因,本地的composer安装包时经常报错:


升级本地的composer到2.x版本:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
 楼主| 发表于 2023-3-3 16:34 | 显示全部楼层

为啥composer下来的thinkphp版本是tp5不是thinkphp6呢?



虽然composer升级版本到v2后,可以拉下thinkphp,但是版本为5.1.41。网上搜索了一番,thinkphp6要求php7.1+,唉。转了一圈,现在又要折腾环境变量了。换个php7.4的环境变量即可。
注:我用的是cmder,里面的环境变量不要设置:
alias composer=E:\php\phpStudy2016\php\php-7.0.12-nts\php.exe E:\php\phpStudy2016\php\php-7.0.12-nts\composer.phar $*
这玩意害得整了一下午的环境,就是找不到composer为啥一直指向php7.0的目录,去掉这行代码,心情瞬间好起来了。

再啰嗦两句,使用composer --help时,应该会有相关的路径显示出来,为啥我偏偏没看到呢?汗。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
 楼主| 发表于 2024-3-28 10:11 | 显示全部楼层
在上面的例子中,我们学到了composer的四个基本命令:
composer self-update //更新composer本身程序版本到最新稳定版本
composer self-update --rollback //使用此命令可以回滚到之前版本
composer -v //查看当前composer版本

composer创建项目相关命令:

composer create-project topthink/think tp //此命令会根据你的php版本找到对应topthink/think最新稳定版本

composer 如果不加版本上去,则默认是下载最新的版本。

版本约束使用示例

: 和 = 都可以
版本约束可以加引号,也可以不加
composer官方文档使用的是 : 并且版本约束加引号
示例代码:

composer create-project topthink/think:"5.1.*"
composer create-project topthink/think=5.1.*

而指定版本的方法有几个:

1.固定一个版本号
composer require hyperf/validation:"v2.1.0"

2.范围法(小于某个版本法)
composer require hyperf/validation:">=v2.1.0"
composer require hyperf/validation:"<v2.1.0"
composer require hyperf/validation:"v2.1.*"  >=2.1.0 <=2.2.0

3.其他的请看官网介绍如下
赋值运算符(最低版本) ~
脱字号版本(最低版本) ^

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|学习笔记

GMT+8, 2024-12-21 21:59 , Processed in 0.026738 second(s), 13 queries , APCu On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表