insolita / composer_recovery
通过供应商目录内容恢复 composer.json
Requires
- php: >=7.1
- ext-json: *
Requires (Dev)
- phpunit/phpunit: ^7.0|^8.0
- roave/security-advisories: dev-master
This package is auto-updated.
Last update: 2024-08-24 15:43:33 UTC
README
用于从 composer.lock 或 vendor/composer/installed .json 恢复丢失的 composer.json 依赖列表的辅助工具(如果丢失了 composer.json)
注意:这不是文件恢复工具,它无法恢复与原始相同的 composer.json 数据。它只是从 composer.lock 中提取包列表和具体版本(以及 dev-master 依赖的哈希),如果 composer.lock 也丢失,则从 vendor/composer/installed.json 中提取。
如果从 installed.json 恢复 - 无法区分默认和开发依赖
请参见 tests/stub/app1_expected.json 作为结果文件的示例
注意2:如果你的项目在 vcs 控制下,你不需要这个包。你可以轻松地从之前的提交或另一个分支恢复 composer.json
安装
composer global require insolita/composer_recovery
确保你的 ~/.composer/vendor/bin 目录已声明在 $PATH 中
echo $PATH
如果没有 - 你应该在 ~/.bashrc 或 ~/.profile 中添加它
基本用法
cd /var/www/myproject && composer-recovery
支持选项
-p : 项目目录的路径(默认为 - 脚本被调用时的活动目录)
-o : recovered_dependecies.json 将被写入的目录的路径(默认为 - 项目目录)
-f : 自定义文件名 - (默认为 - recovered_dependecies.json)
带有选项的示例
composer-recovery -p /var/www/myproject/ -o /some/place/for/result/ -f mycomposer.json
composer-recovery -p . -o ../output/