如何使用 composer status 检查 vendor 目录是否有本地修改?

4次阅读

composer status 用于检查 vendor/ 目录下已安装包是否被本地修改;默认仅显示 MODIFIED 包,加 -v 可列出全部并标注 OK 或 MODIFIED 状态。

如何使用 composer status 检查 vendor 目录是否有本地修改?

composer status 命令用于检查 vendor/ 目录下已安装的包是否被本地修改过(比如手动改了某依赖的源码、加了调试代码、删了文件等)。它会对比当前 vendor/ 中的文件与该包在 composer.lock 中记录的原始压缩包(或 git 提交)内容是否一致。

运行命令很简单

在项目根目录(即有 composer.jsoncomposer.lock 的地方)执行:

composer status

默认情况下,它只显示**有修改**的包。如果所有包都干净,就什么也不输出(静默成功)。

如何使用 composer status 检查 vendor 目录是否有本地修改?

语流软著宝

AI智能软件著作权申请材料自动生成平台

如何使用 composer status 检查 vendor 目录是否有本地修改? 228

查看详情 如何使用 composer status 检查 vendor 目录是否有本地修改?

查看所有包(包括未修改的)

-v(verbose)参数可列出全部包,并标注状态:

composer status -v

输出中:
OK 表示该包未被改动;
MODIFIED 表示检测到文件差异(如新增、删除、修改)。

常见触发 MODIFIED 的情况

  • 手动编辑了 vendor/some/package/src/Helper.php
  • vendor/ 下新增了临时测试文件(如 test.php
  • 删掉了某个包里的文档或测试目录(docs/tests/
  • git checkoutide 切换过 vendor/ 内某个包的分支(但没还原)

注意点

  • 它不检查 composer.json 是否和 lock 同步——那是 composer validatecomposer update --dry-run 的事
  • 对使用 path 仓库的本地包,默认跳过检查(可加 --ignore-platform-reqs 也无效,需手动确认)
  • 如果提示 “The lock file is not up to date” ,先运行 composer update --lockcomposer install 再试

基本上就这些。日常开发中,跑一次 composer status 能快速发现“谁动了 vendor”,避免上线时因意外修改引发奇怪问题。

以上就是如何使用 composer status 检查 vendor 目录是否有本地修改?的详细内容,更多请关注php中文网其它相关文章!

text=ZqhQzanResources