搜索
首页开发工具composer推荐六个鲜为人知的Composer命令

推荐六个鲜为人知的Composer命令

Jun 26, 2019 pm 06:25 PM
composer命令

推荐六个鲜为人知的Composer命令

Composer 是 PHP 的一个依赖管理工具。 如果你是一名 PHP 开发人员,那么你很可能每天都在使用它并且频繁的运行命令 requireinstallupdate。也许你并没有意识到, 我们可以使用一些其他的Composer命令,来更加轻松的使用它。

它有许多的命令可以使用,但今天我将分享我使用的并且每天都有帮助的 6 个命令。

show

先说下 show 命令。它允许您查看项目的所有已安装包(包括依赖项),以及查看相关包的说明。所有这些信息都可以在Composer锁文件(composer.lock)中找到, 但是使用 show 命令相对来说是一种更简单、更方便的一种查看包信息的方法。

要列出所有已安装的包及其版本号和说明,只需使用 show:

composer show

有时候把这些信息用依赖关系树的形式查看会更容易理解, 可以通过 --tree or -t 参数:

composer show -t

如果要筛选返回的包,可以使用通配符传递一个额外的字符串参数 *:

composer show 'symfony/*'

这将返回所有已安装的symfony包。注意这里的引号, 如果您使用的是 bash shell,不需要加这个引号, 但是如果您使用的是 zsh 你不用引号的话就会报 ‘no matches found’ 错误。

如果要查看有关特定包的信息,需要完整包名:

composer show laravel/framework

这将向您显示安装的版本、它的许可证和依赖项以及它在本地安装的位置等信息。

why

如果您想知道安装特定软件包的原因,可以使用 why 命令来确定哪些依赖项需要它:

composer why vlucas/phpdotenv

why  为什么是depends命令的别名,但就我个人而言,我发现使用 ‘why’ 更容易记住。您可以使用--tree-t标志在依赖树中查看此信息:

composer why vlucas/phpdotenv -t

why-not

有时,一个或多个已安装的软件包将阻止安装或更新软件包。 为了检查是哪些安装包,我们可以使用 why-not 命令(别名为 prohibits)。 例如,Laravel 最近发布了一个新的5.8版本的框架; 我们可以使用 why-not 命令检查任何阻止我们更新 laravel/framework 包的包:

composer why-not laravel/framework 5.8

同样,我们可以使用 --tree-t 标记在依赖关系树中查看此信息:

composer why-not laravel/framework 5.8 -t

outdated

在使用 composer update 命令前,你也许想检测一下已安装的包,哪些有可以升级的。这可以使用 outdated 命令。

composer outdated

此命令是 composer show -lo 的别名之一。

根据语义化的版本,返回着色的代码,来标明每个包的状态:

  • Green: 当前安装包已是最新版本
  • Yellow: 有可升级的更新, 但可能有不兼容的修改。
  • Red: 有可用的小版本升级 (一般是bug修复)

如果希望高亮显示小的升级版本, 可以使用 outdated 命令,以--minor-only 或者 -m 参数 :

composer outdated -m

状态

我发现自己经常会使用 installupdate 命令的参数 --prefer-source 来处理源代码安装的依赖项。 然后,如果我修改了任何这些依赖项,我需要一种快速检查哪些包已被修改的方法。 status 命令提供了一种方便的方法。

您可以使用 --verbose-v 参数来查看本地修改的软件包和文件:

composer status -v

我发现使用 verbose 标记是使用此命令最有用的方法。

许可

最后,知道您安装的每个软件包的许可证是非常有用的。 Composer 有一个方便的 licenses 命令,用于查询许可的完整列表:

composer licenses

更多相关的composer教程文章,请访问composer使用教程栏目!

以上是推荐六个鲜为人知的Composer命令的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作曲家:PHP软件包管理的综合指南作曲家:PHP软件包管理的综合指南May 11, 2025 am 12:17 AM

Composer是一个PHP依赖管理工具,通过composer.json文件管理项目依赖。1.初始化项目使用composerinit。2.添加依赖如composerrequireguzzlehttp/guzzle。3.高级用法包括配置私有仓库和使用脚本钩子。4.常见错误如依赖冲突可通过composerwhy-not命令调试。5.性能优化建议使用composerinstall--prefer-dist和定期更新依赖。

作曲家在行动中:自动化依赖性分辨率作曲家在行动中:自动化依赖性分辨率May 10, 2025 am 12:22 AM

Composer通过自动化依赖解析简化了PHP项目的依赖管理。1)读取composer.json解析依赖需求;2)构建依赖树处理版本冲突;3)从Packagist下载并安装依赖到vendor目录;4)生成composer.lock确保依赖一致性,从而提升开发效率。

AI和作曲家:增强代码质量和开发AI和作曲家:增强代码质量和开发May 09, 2025 am 12:20 AM

AI在Composer中主要通过依赖推荐、依赖冲突解决和代码质量提升来提高开发效率和代码质量。1.AI可以根据项目需求推荐合适的依赖包。2.AI提供智能解决方案来处理依赖冲突。3.AI审查代码并提供优化建议,提升代码质量。通过这些功能,开发者可以更专注于业务逻辑的实现。

什么定义了作曲家:了解角色什么定义了作曲家:了解角色May 08, 2025 am 12:07 AM

作曲家是通过创作音乐作品来表达情感、讲述故事或表达思想的人,他们的角色包括构思音乐结构、选择乐器组合和与其他音乐家合作。1)作曲家在创作过程中会经历构思、创作、修改和完善四个阶段;2)他们需要掌握音乐理论,如和声、对位和旋律,以确保作品的质量和效果。

作曲家:安装,更新和管理依赖项作曲家:安装,更新和管理依赖项May 07, 2025 am 12:07 AM

Composer是PHP的依赖管理工具,通过composer.json和composer.lock文件管理项目依赖。1.安装Composer:运行特定命令并移动composer.phar到系统路径。2.更新Composer:使用composerself-update命令。3.依赖管理:通过composerrequire命令添加依赖,自动更新相关文件并下载包。

AI驱动的作曲家:代码生成和分析AI驱动的作曲家:代码生成和分析May 06, 2025 am 12:11 AM

AI在代码生成和分析中发挥重要作用:1)通过机器学习和NLP生成代码,如GitHub的Copilot;2)进行代码分析,识别bug和优化建议,如SonarQube;3)提高开发效率和代码质量,但需人工审查和优化。

作曲家:AI驱动的工具和集成作曲家:AI驱动的工具和集成May 05, 2025 am 12:11 AM

Composer本身不包含AI功能,但可以通过AI工具增强其能力。1)AI可以分析composer.json文件,建议优化依赖项和预测版本冲突。2)AI驱动的平台如GitHubCopilot可提供实时代码建议,提升开发效率。使用AI工具时需结合实际情况进行验证和调整。

成功作曲家的属性成功作曲家的属性May 04, 2025 am 12:13 AM

成功作曲家的关键特质包括:1)丰富的创意与想象力,2)扎实的技术技能与工具掌握。这些特质与编程中的创造性和结构化思维相似,帮助作曲家在音乐创作中实现创意并优化作品。

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

SecLists

SecLists

SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

功能强大的PHP集成开发环境

螳螂BT

螳螂BT

Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

MinGW - 适用于 Windows 的极简 GNU

MinGW - 适用于 Windows 的极简 GNU

这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版