# 基础知识

# 配置镜像

当我们使用 composer 安装软件包时是从远程的国外服务器下载的,但国内用户访问国外服务器会比较慢,甚至不能访问。有些机构将国外的软件同步到了国内服务器,将composer下载扩展包用的服务器指向这个国内服务器,就可以实现快速下载扩展包了。

推荐使用 阿里云镜像 (opens new window)

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

查看当前使用的镜像

composer config -gl | grep repositories.packagist.org.url
1

取消全局镜像配置,使用默认的 https://repo.packagist.org

composer config -g --unset repo.packagist
1

# 版本约束

重点提示

掌握版本号在 Composer 的使用过程中非常重要

版本号的命名

主版本号.次版本号.修订号。详情查看: 语义版本控制 (opens new window)

测试版本约束

这是 Composer 官网提供的一个网站,专门让开发者测试版本约束范围用的。点击前往 (opens new window)

# 使用示例

通配符版本约束安装 TP6.0 的最新稳定版

composer create-project topthink/think:"6.0.*"

composer create-project topthink/think="6.0.*"
1
2
3

指定具体版本号安装时可以不加 引号

composer create-project topthink/think=6.0.12
1

# 精确版本

示例 说明
6.0.0 指定安装的具体版本

# 版本范围

通过使用比较运算符,可以指定有效版本的范围。有效的运算符有: ><>=<=!=

示例 说明
>=1.0 大于等于 1.0.0

# 通配符版本范围

示例 说明
1.0.* >=1.0 且 <1.1

# 连字符版本范围

- 连字符可以指定一个具体的版本范围区间,右侧包含的部分版本使用通配符完成

示例 说明
1.0 - 2.0 >=1.0.0 且 <2.1

# 插入符号版本范围

^ 用于限制主版本号的升级,一般来说,跨大版本号可能会有向下兼容的问题

但是,对于 1.0 之前的版本,考虑到其安全性,所以将 ^0.3 视为 >=0.3.0 且 <0.4.0

示例 说明
^1.0 >=1.0 且 <6.0
^1.2.3 >=1.2.3 且 <2.0.0

# 波浪符号版本范围

主要用于限制次版本号的升级

可以理解为 ~ 只能改变最末尾那段,如果是 ~x.y 末尾就是 y;如果是 ~x.y.z 末尾就是 z

示例 说明
~1.2 >=1.0 且 <2.0.0
~1.2.3 >=1.2.3 且 <1.3.0
最后更新时间: 1/30/2022, 1:53:22 PM