composer更新指定包||composer 常用命令「建议收藏」

composer更新指定包||composer 常用命令

大家好,又见面了,我是全栈君。

composer config -l  #查看一下当前项目的composer镜像

composer list 显示所有命令

composer show 显示所有包信息

composer install 在 composer.json 配置中添加依赖库之后运行此命令安装

composer create-project laravel/laravel Laravel –prefer-dist “5.1.*” 创建项目

composer search packagename 搜索包

composer update 更新所有包

composer update monolog/monolog 更新指定包

composer remove monolog/monolog 移除指定的包

composer require monolog/monolog 添加指定包

composer require monolog/monolog:1.19 添加指定包和版本

composer require monolog/monolog=1.19

composer require monolog/monolog 1.19

这边需要注意的是 更换镜像不要进行全局更换的命令 而是要针对这个项目去更换镜像

所以 我们在这个项目的根目录下也就是composer.json的路径下 

针对这个项目 进行更换镜像  使用阿里云镜像

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

需要把composer镜像地址改为国内的会快很多,执行下面两行命令安装  

composer config -g repo.packagist composer https://packagist.phpcomposer.com
composer require doctrine/dbal   #doctrine/dbal 要安装的包

selfupdate
更新 composer 本身,请经常执行 composer selfupdate 以保持 Composer 一直是最新版本。

composer selfupdate

等价于

composer self-update

dumpautoload
当我们更改了 composer.json 文件中的 autoload 时,需要执行 composer dumpautoload,来让 autoload 立即生效。而不必执行 install 或 update 命令。

composer dumpautoload

等价于

composer dump-autoload

dumpautoload 命令有两个常用的选项:

–optimize (-o): 转换 PSR-0/4 autoloading 到 classmap ,以获得更快的载入速度。这特别适用于生产环境,但可能需要一些时间来运行,因此它目前不是默认设置。
–no-dev: 禁用 autoload-dev 规则。
install

composer install

依据当前目录下的 composer.lock(锁文件) 或 composer.json 文件,所定义的依赖关系,安装依赖包。

install 命令会先检查 composer.lock 锁文件是否存在,如果存在,它将下载 composer.lock 文件中指定的版本,而忽略 composer.json 文件中的定义。

# 查看 composer install 的帮助信息
composer install -h

 

# 只安装 require 中定义的依赖,而不安装 require-dev 中定义的依赖
composer install --no-dev

update
如果你想更新你的依赖版本,或者你修改了 composer.json 中的依赖关系,想让 composer 按照 composer.json 文件中的定义执行更新操作,就用 update 命令。

composer update

require
require 命令一般用来安装新的依赖包,并将依赖写入当前目录的 composer.json 文件中。

如果 composer.json 文件中,添加或改变了依赖,修改后的依赖关系将被安装或者更新。

composer require

你也可以直接在命令中指明需要安装的依赖包。

composer require barryvdh/laravel-ide-helper

安装指定版本的依赖包。

composer require barryvdh/laravel-ide-helper:1.0

–dev 选项和 require-dev 相对应。如果你的依赖包仅仅用于开发环境,建议加上 –dev 选项。

composer require --dev barryvdh/laravel-ide-helper

create-project
你可以使用 create-project 从现有的包中创建一个新的项目。

它相当于执行了 git clone 命令后,将这个包的依赖安装到它自己的 vendor 目录。

此命令有几个常见的用途:

你可以快速的部署你的应用。
你可以检出任何资源包,并开发它的补丁。
多人开发项目,可以用它来加快应用的初始化。
# 安装 Laravel 项目

composer create-project --prefer-dist laravel/laravel blog 5.5.*

如果没有指定版本号,就默认安装最新的版本。

–prefer-dist: 当有可用的包时,从 dist 安装。

search
search 命令可以搜索远程的依赖包,通常它只搜索 packagist.org 上的包,你可以简单的输入你的搜索条件。

composer search monolog

–only-name (-N)选项, 仅针对指定的名称搜索(完全匹配)。

show
列出已安装的依赖包,你可以使用 show 命令。

composer show

列出镜像站点上所有的依赖包。

composer show --all

如果你想查看某个指定的依赖包的详细信息,你可以输入包名称。

composer show monolog/monolog

config
config 命令允许你编辑 Composer 的一些基本设置,无论是本地的 composer.json 还是全局的 config.json 文件。

查看 Composer 的全局配置信息:

composer config -g --list

语法:config [options] [setting-key] [setting-value1] … [setting-valueN]

setting-key 是配置选项的名称,setting-value1 是配置的值。可以使用数组作为配置的值(像 github-protocols),多个 setting-value 是允许的。

例如,全局配置 Composer 的国内镜像:

# 推荐使用阿里云 Composer 全量镜像

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

选项:

–global (-g): 操作 $COMPOSER_HOME/config.json 全局配置文件。如果不指定该参数,此命令将影响当前项目的 composer.json 文件,或 –file 参数所指向的文件。
–editor (-e): 使用文本编辑器打开 composer.json 文件。默认情况下始终是打开当前项目的文件。当存在 –global 参数时,将会打开全局的 config.json 文件。
–unset; 移除由 setting-key 指定的配置选项。
–list (-l): 查看当前配置选项的列表。当存在 –global 参数时,将会显示全局配置选项的列表。
–file=”…” (-f):在一个指定的文件上操作,而不是 composer.json。它不能与 –global 参数一起使用。
run-script
run-script 命令,可用来手动执行脚本,只需要指定脚本的名称即可。

假如,composer.json 中存在如下脚本。

{
    "scripts": {
        "post-update-cmd": "MyVendor\\MyClass::postUpdate",
        "post-package-install": [
            "MyVendor\\MyClass::postPackageInstall"
        ],
        "post-install-cmd": [
            "MyVendor\\MyClass::warmCache",
            "phpunit -c app/"
        ]
    }
}

运行所有 post-install-cmd 事件下定义的脚本:

composer run-script post-install-cmd

参考: https://blog.csdn.net/lamp_yang_3533/article/details/80233156

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/111745.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(1)


相关推荐

  • 网络安全与渗透测试工具导航下载_渗透师导航

    网络安全与渗透测试工具导航下载_渗透师导航一些网络安全与渗透测试工具导航,值得收藏,看看有没有你熟悉的,也许有一天你会用得到! 入门指南 在线靶场 文件上传漏洞靶场 导航 payload 子域名枚举 自动爬虫实现的子域名收集工具 waf开源及规则 web应用扫描工具 webshell检测以及病毒分析 DDos防护 Android系列工具 XSS扫描 代码审计 端口扫描、指

  • 详细介绍mysql索引类型:FULLTEXT、NORMAL、SPATIAL、UNIQUE

    详细介绍mysql索引类型:FULLTEXT、NORMAL、SPATIAL、UNIQUEmysql索引类型:FULLTEXT、NORMAL、SPATIAL、UNIQUE的详细介绍Normal普通索引Unique唯一索引FullText全文索引SPATIAL空间索引btree索引和hash索引的区别在实际操作过程中,应该选取表中哪些字段作为索引?Normal普通索引表示普通索引,大多数情况下都可以使用Unique唯一索引表示唯一的,不允许重复的索引,如果该字段信息…

  • 公网IP和内网IP的区别[通俗易懂]

    公网IP和内网IP的区别[通俗易懂]最近在学习shell反弹这块的时候,在向源主机发送报文的时候,由于不了解公网IP和内网IP的区别,导致在监听端口这块一直没有捕获到信息,后来才知道是因为我用的公司的局域网是192开头的,属于内网,因此只能在内部进行通信,而不能与其他网络互连。因为本网络中的保留地址同样也可能被其他网络使用,如果进行网络互连,那么寻找路由时就会因为地址的不唯一而出现问题。因此总结下内网和公网的区别。内网,一般来说,也就是局域网,我们可以把局域网理解成一个小家庭,然后给我们每个家庭的成员都编上号,比如张三是192.168.1.

  • 在微型计算机中1gb等于多少字节,1GB等于多少字节「建议收藏」

    在微型计算机中1gb等于多少字节,1GB等于多少字节「建议收藏」1GB=1073741824字节。1KB=1024字节1M=1024KB1G=1024MB一小组相邻的二进制数码称为字节。通常是8位作为一个字节。它是构成信息的一个小单位,并作为一个整体来参加操作,比字小,是构成字的单位。扩展资料:数据的存储是以“字节”(Byte)为单位,数据传输大多是以“位”(bit,又名“比特”)为单位,一个位就代表一个0或1(即二进制),每8个位(bit,简写为b)组成一个…

  • 经验19–C#大事

    经验19–C#大事

  • 计算机vb语言程序设计_vb语言程序设计基础

    计算机vb语言程序设计_vb语言程序设计基础VisualBasic程序设计教程:计算机类语音编辑锁定讨论上传视频《VisualBasic程序设计教程:计算机类》是中国科学技术出版社出版的图书,作者是王东、刘福来。中文名VisualBasic程序设计教程:计算机类出版社中国科学技术出版社定价39.20作者王东刘福来ISBN9787504646798VisualBasic程序设计教程:计算机类内容简介编辑语音《全国高等…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号