composer 使用细则

183 篇文章 27 订阅
订阅专栏
11 篇文章 0 订阅
订阅专栏

一、composer install 和 composer update 的区别

1.composer.json 文件

指定了项目依赖组件的版本规则及镜像地址

如果没有配置镜像地址,则默认使用全局安装的composer镜像地址

2.composer.lock 文件

保存着当前项目所依赖的php组件的镜像地址及具体的版本号,这样就会有效防止下次install的时候,多人协作依赖的版本不一致问题。

3.composer install

具体分2种情况

第一种:项目里没有composer.lock文件

会根据composer.json文件里配置的版本规则和镜像地址安装组件,并将其安装到vendor目录下。

并生成一个新的composer.lock文件

第二种:项目里有composer.lock文件

不会从 composer.json 文件里读取相关配置规则

直接从composer.lock文件里面的镜像地址安装指定版本的组件

并将其安装到vendor目录下。

4.composer update

从 composer.json 文件里读取第三方组件及其版本配置规则,更新或安装PHP 组件版本

并重新生成一个composer.lock文件,

即会覆盖掉之前的composer.lock文件里的内容

如果依赖的第三方组件有版本更新,update会将最新的版本安装到vendor目录下,并更新composer.lock。风险比较大。

当多人协作开发的时候,需要保证项目所依赖的php组件的版本保持一致

这个时候就要必须把composer.lock加入版本控制当中

如果是个人项目,则随意即可!

二、laravel 项目安装失败问题先试试这个方法

第一步:删除安装失败的laravel项目,window直接删除,linux 使用 rm -rf 文件名(更换为自己的项目文件夹名) 删除。

第二步:使用composer self-update命令确认自己的composer版本是不是最新版本

第三步:使用composer clearcache 命令清除composer缓存

第四步:重点。更换composer镜像为阿里云镜像。

composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
即使使用的是官方镜像 https://packagist.phpcomposer.com,也要换成阿里云镜像,官方镜像有毒…

第五步:然后就是正常安装:composer create-project --prefer-dist laravel/laravel 文件名

三、Composer常用的命令整理

composerphp包管理工具,使用它可以很方便进行构建项目,载入三方包,以及各种复杂依赖,自动加载等需要。

1.安装composer

curl -sS https://getcomposer.org/installer | php -- \
    --install-dir=/usr/bin \
    --filename=composer

安装后,使用composer -v来查看版本号等信息。

2.修改代码仓库源

由于composer默认的源服务器在国外,因为众所周知的原因,下载龟速,我们需要将其替换为国内的全量源,目前可用的有这两个:

来自 https://php.cnpkg.org/

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

来自 Laravel China

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

3.查看全部全局配置

composer config -g --list

4.查看单个项目全部配置

composer config --list

5.查看某个配置

composer config -g repositories.packagist.org

6.取消某一项配置

composer config -g --unset repos.packagist

7.创建新项目

创建一个Yii项目

composer create-project --prefer-dist yiisoft/yii2-app-basic basic.com

其中create-project命令后面的--prefer-dist还可以使用--prefer-source,它们的区别:

--prefer-dist会从github上下载.zip压缩包,并缓存到本地。下次再安装就会从本地加载,大大加速安装速度。但她没有保留 .git文件夹,没有版本信息。适合基于这个package进行开发。

--prefer-source 会从githubclone源代码,不会在本地缓存(最新的版本也可以使用缓存了)。保留了.git文件夹,从而可以实现版本控制。适合用于修改源代码。

推荐使用--prefer-dist可以加快速度,在使用的时候有可能会有下面类似的警告:

Failed to download yiisoft/yii2-gii from dist: The zip extension and unzip command are both missing, skipping.
Your command-line PHP is using multiple ini files. Run `php --ini` to show them.

环境中缺少zipunzip工具包,安装一下:

apt-get install zip unzip

之后跟的yiisoft/yii2-app-basic就是项目包名,最后面的basic.com指定新建项目文件夹。

8.检索仓库里的包

composer search monolog/monolog

9.安装新依赖包

composer require monolog/monolog

10.控制版本号

# 指定版本
composer require monolog/monolog 1.24.0
# 版本范围
# 有效的运算符有 >、>=、<、<=、!=,运算符中间使用逗号隔开视作逻辑AND,使用|隔开,视作逻辑OR,AND的优先级更高
# 支持通配符 * 
# 支付波浪号运算符 ~ 限定在最低版本和下一个重要版本更新之前
# 以下都是有效的版本号

# 版本大于等于1.0
>=1.0
# 版本大于等于1.0并且小于2.0
>=1.0,<2.0
# 版本大于等于1.0并且小于1.1,或者版本大于等于1.2
>=1.0,<1.1|>=1.2
# 相当于>=1.0,<1.1
1.0.* 
# 相当于>=1.2,<2.0
~1.2
# 相当于>=1.2.3,<1.3
~1.2.3
# 相当于>=1.2.3,<2.0.0  在多于2位的版本号的时候跟 ~ 有区别
^1.2.3

11.移除依赖包

composer remove monolog/monolog

12.初始化一个composer.json

composer init

13.查看已存在的包

composer info

 根据composer.lock安装依赖包(如果存在),否则根据composer.json

composer install

14.根据composer.json更新依赖到指定范围内最新版,并更新composer.lock文件

composer update

15.清理缓存

composer clearcache

 16.更新composer.phar

composer self-update

composer 设置版本号_composer版本命名及限定规则
weixin_39589253的博客
12-31 659
版本命名规则:[name].x.y.z-[state]name为可选字段,一般为v,表示 versionx.y.z为各版本的序号,遵循语义化版本命名规范实际上基于此规范,不应该在版本前出现 name 字段.state可选字段,表示版本状态,例如b表示 beta 测试版,其他常见状态,后有详述x、y、z含义0.y.z表示开发阶段,一切可能随时改变,非稳定版。1.0.0界定此版本为初始稳定版,后面的一...
Code Composer Studio 6.2.0软件入门使用说明
03-20
Code Composer Studio 6.2.0 软件入门使用说明 Code Composer Studio (CCS) 是一款功能强大且广泛应用于嵌入式系统开发的集成开发环境 (IDE),由 Texas Instruments (TI) 公司开发。CCS 6.2.0 是 CCS 的一个版本,...
Composer版本约束
weixin_43908020的博客
05-14 1283
Composer版本约束可以分为 版本号约束 和 稳定性约束,两者结合共同影响着 Composer版本约束。 版本号从小到大排列,稳定性从 dev、alpha、beta、RC、stable 排列,先排版本号后稳定性。 排列例如: v1.2.0 <v1.2.0-dev <v1.2.0-beta < v1.2.0-rc < v.1.2.1 < v.1.2.3-beta < v.1.2.3 < v1.2.5 < v1.3 运算符 Compo..
composer 版本
leo09999的博客
10-18 319
1、composer 版本 1.2.3 指定固定版本 ~1.2.* # ~控制到小版本 >=1.2 && <1.3 ~1.* >=1 && <2 ^1.2 # 控制大版本 ^ >=1 && <=2
composer.json和composer.lock区别
最新发布
qq_29294071的博客
07-29 667
开发中很多程序员只知道项目初始化的时候composer install一下,实际并不知道composer install走了什么。更分不清compose install和composer update的区别是什么,从compose install字面意思看到时安装,实则并不知道从哪来安装,从compose update字面意思看到时更新,实则并不知道从哪来更新所以今天主要讲下composer.json和composer.lock的区别。
Composer 版本约束表达式的使用
SakuraLLj的专栏
09-11 1382
相信 Composer 对你来说已经相当熟悉了,不过对于包的版本,我觉得应该还有不少同学不是那么清楚各种写法到底是啥意思。语义化版本首先,我们来了解一个东西:语义化版本 版本格式:主版本号.次版本号.修订号,版本号递增规则如下: 主版本号:当你做了不兼容的 API 修改, 次版本号:当你做了向下兼容的功能性新增, 修订号:当你做了向下兼容的问题修正。 先行版本号及版本编译信息可以加到“主版本号.
2018版SOLIDWORKS Composer使用指南 64位 Lesson01-Lesson13
01-10
《SOLIDWORKS Composer 2018使用指南 64位 Lesson01-Lesson13》 SOLIDWORKS Composer是一款强大的三维可视化软件,主要用于制作产品说明书、装配指导和营销材料。2018版是其重要的更新,不仅在性能上有所提升,还在...
一次因composer错误使用引发的问题与解决
10-17
Composer 错误使用引发的问题与解决 ComposerPHP 的依赖管理工具,用于管理项目中的依赖项。然而,在使用 Composer 时,可能会遇到各种错误,影响项目的正常运行。本文将详细介绍一次因 Composer 错误使用引发...
使用composer安装使用thinkphp6.0框架问题【视频教程】
10-16
本知识点主要围绕如何使用composer安装thinkphp6.0框架以及遇到的问题解决方法进行详细讲述,分为以下几部分: 1. 安装Composer ComposerPHP的依赖管理工具,可以方便地管理和下载所需的库文件。在安装thinkphp...
composer:在您的Github操作中使用Composer CLI
03-19
在您的Github操作中使用Composer CLI。 Composer是用于PHP中的依赖项管理的工具。它允许您声明项目所依赖的库,并将为您管理(安装/更新)它们。 如果您运行的测试一样, 或在Github上的行动,那么你就需要使用...
Composer 版本
上善若水
04-01 1541
Composer版本约束可以分为 版本号约束 和 稳定性约束,两者结合共同影响着 Composer版本约束。 版本号从大到小排列,稳定性从 stable、RC、beta、alpha、dev 排列,先排版本号后稳定性。 排列例如: v1.3 > v1.2.5 > v1.2.3 > v1.2.3-beta > v1.2.1 > v1.2.0-rc > v1.2.0-beta > v1.2.0-dev > v1.2.0 运算符 Composer 可以通过
composer require 指定下载的版本
热门推荐
cominglately的博客
08-16 1万+
场景 解决 小贴示 场景 laravel5.5(当前已经到了5.6版) 需要下载对应版本的权限控制包 ultraware/roles 5.5.0(最新版5.6) 所以在安装包的时候需要指定版本 解决 composer require ultraware/roles 5.5.0 composer require package $version 小贴示...
composer php 标准,Composer使用版本命名规范是什么?
weixin_35952290的博客
03-17 207
下面由composer使用教程栏目为大家讲解Composer使用版本命名规范是什么,希望对需要的朋友有所帮助!Composer使用的是什么版本命名规范?摘要版本格式:主版本号.次版本号.修订号,版本号递增规则如下:主版本号:当你做了不兼容的 API 修改,次版本号:当你做了向下兼容的功能性新增,修订号:当你做了向下兼容的问题修正。先行版本号及版本编译元数据可以加到“主版本号.次版本号.修订号”的...
composer require 包时,指定版本
10年老码农
08-05 7416
composer 如果不加版本上去,则默认是下载最新的版本版本约束使用示例 :和=都可以 版本约束可以加引号,也可以不加 composer官方文档使用的是:并且版本约束加引号 示例代码: composer create-project topthink/think:"5.1.*" composer create-project topthink/think=5.1.* 而指定版本的方法有几个: 1.固定一个版本composer require hyperf/valida...
composer require 某软件安装指定版本
10年老码农
01-04 4197
1、各版本号的意思。 #最新版 * # 大于等于1.0的最高版本 >=1.0 #大于等于1.0且小于2.0的最高版本 >=1.0 <2.0 #1.0至2.0之间的最高版本 1.0 - 2.0 #>=1.0且<1.1的最高版本 1.0.* #>=1.2且<2.0的最高版本 ~1.2 #>=1.2.3且<1.3.0最高版本 ~1.2.3 #>=1.2.3且<2.0.0的最高版本 ^1.2.3 2、安装什么样的包?开发版的
Composer使用
chaishen10000的专栏
04-17 1626
ComposerPHP 的一个依赖管理工具。我们可以在项目中声明所依赖的外部工具库,Composer 会帮你安装这些依赖的库文件,有了它,我们就可以很轻松的使用一个命令将其他人的优秀代码引用到我们的项目中来。 Composer 默认情况下不是全局安装,而是基于指定的项目的某个目录中(例如 vendor)进行安装。 Composer 需要 PHP 5.3.2+ 以上版本,且需要开启 opens...
composer基本使用规则
enjoy_sun_moon的博客
01-10 293
安装composer composer -V查看composer版本 composerselfupdate//终端执行该命令将composer更新到最新版 composer create-project topthink/think 默认安装thinkphp最新...
如何指定compose命令使用php版本
Albert_Y
07-02 594
我们平常在php开发工作中,往往会多php版本并存使用,此时使用compose时就会有php版本切换的问题我们通常会再环境变量中指定一个php版本作为系统php版本,当我们使用compose时需切换php版本,我们只需要修改环境变量中php版本即可,但是公司对电脑用户做了限制,我们无法直接打开环境变量修改该怎么办。
composer 使用git拉取
07-22
使用 Composer 拉取 Git 仓库中的依赖项,你可以在 `composer.json` 文件中指定 Git 仓库的 URL。 在 `composer.json` 文件中,你可以添加一个名为 "repositories" 的部分,其中包含你要拉取的 Git 仓库的详细...
写文章

热门文章

  • Mysql错误:#1054 - Unknown column ‘id‘ in ‘field list‘ 解决办法 55599
  • mysql导入文件出现Data truncated for column 'xxx' at row 1的原因 52517
  • ERROR 1055 (42000): Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregate 44940
  • laravel insert 、save、update、create区别(总结二) 44714
  • no-referrer-when-downgrade什么意思 37771

分类专栏

  • Rabbitmq 10篇
  • ChatGPT 1篇
  • PHP高级进阶 183篇
  • 天猫 3篇
  • 时序数据库 7篇
  • 大数据 3篇
  • 编制 1篇
  • Mysql 75篇
  • php面试题 64篇
  • swoole 15篇
  • GO 37篇
  • linux 39篇
  • 前端 30篇
  • laravel 19篇
  • 职业生涯 12篇
  • mongodb 8篇
  • thinkphp5 9篇
  • Yii2 1篇
  • composer 11篇
  • memcahe 2篇
  • vue 3篇
  • 爬虫 2篇
  • phpstorm 11篇
  • vagrant 18篇
  • centos 8篇
  • Git / svn 30篇
  • redis 21篇
  • python 10篇
  • elasticsearch 18篇
  • 工具 39篇
  • 视频资源 1篇
  • 网络协议 24篇
  • nginx 17篇
  • 消息队列 2篇
  • JAVA 1篇
  • 支付 7篇
  • API 9篇
  • docker 12篇
  • aws S3存储 11篇
  • 域名 9篇
  • Mac 18篇

最新评论

  • mac终端(terminal)里的快捷键

    iddaweitianlong: command+D分开的屏如何合并回来?

  • 缓存是什么?占内存吗?

    背郢: 缓存是在cpu当中的,不在硬盘上

  • Thinkphp集成抖音SDK的实现方法

    一只会跑会跳会发疯的猴子: https://developer.open-douyin.com/docs/resource/zh-CN/developer/tools/cloud/sdk/config-center-sdk github

  • Go语言开发分布式任务调度 ,轻松搞定高性能Crontab

    Luis9527: 请问有课程链接吗

  • 我裸辞一年后开始试着在家接单

    Teclis: 楼主能留个群么,我后端 也想找兼职,如果找到了有偿表情包

最新文章

  • 美女壁纸
  • 毕业生薪资曝光!2024 高校应届生工资真相,绝对颠覆你的认知!
  • 纯php写的贪吃蛇游戏,膜拜了
2024
09月 10篇
08月 22篇
07月 17篇
06月 13篇
05月 5篇
04月 20篇
03月 14篇
02月 21篇
01月 28篇
2023年204篇
2022年216篇
2021年298篇
2020年353篇
2019年652篇
2018年1048篇
2017年781篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lxw1844912514

你的打赏就是对我最大的鼓励

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或 充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

玻璃钢生产厂家玻璃钢雕塑油漆工艺季节性商场美陈研发圆圆景观玻璃钢雕塑兰州景观玻璃钢雕塑厂家佛山玻璃钢动物雕塑产品介绍玻璃钢仿铜雕塑定制河北小品系列玻璃钢雕塑江苏透明玻璃钢雕塑制作多少钱广东中庭商场美陈市场报价投资一家玻璃钢雕塑要多少钱江苏关公玻璃钢雕塑厂家小鸟玻璃钢雕塑工艺威海玻璃钢卡通雕塑厂家批发深圳儿童玻璃钢雕塑公司哪家好玻璃钢步行街景观雕塑连城玻璃钢花盆花器玻璃钢雕塑 牛商网欧式玻璃钢卡通雕塑推荐货源公园摆件玻璃钢雕塑销售价格商场美陈问题曲阳玻璃钢雕塑生产漂亮的玻璃钢雕塑周口室外玻璃钢卡通雕塑厂家河北玻璃钢孔子雕塑河南艺术商场美陈厂家直销商场的美陈装饰目的是什么安顺商场美陈道具设计河南玻璃钢雕塑公司仿真玻璃钢人物雕塑尺寸金华步行街玻璃钢雕塑订做价格香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化