从已有安装包(vendor)恢复 composer.json

问题描述:

拿到的一个项目没有 composer.json,不过 /vendor 目录下是完整存在的。对此我们进行恢复。提供两个方式,都需要通过 /vendor/composer/installed.json 进行恢复。如果不存在则只能手动将所存在的项目逐个取出及对应版本号收集整理。

原因分析:

原理
其一,将上述文件内容所有的包名称及版本号提取出来标准规范写到 composer.json 即可。
其二,创建 composer.json ,运行 composer show --installed ,程序会将其列表出来,也需要收集提取。

解决方案:

1.运行 composer show --installed > 文件名 写到文件里面
在这里插入图片描述

2.使用sublime Text 匹配正则替换
匹配正则:
([A-z0-9/-.]+)\s+([A-z0-9.-]+)[\S\s]+?\n
替换正则:
“$1”:"$2",\n
在这里插入图片描述
3.替换项目composer.json文件

我们将 composer 返回的内容复制出来,使用正则提取出来并将其替换,最后将其中的 #### 替换为相应的换行符 \r\n ,格式化后将其放置到 composer.json 文件里的 require 或者 require-dev 配置段。

4.更新composer

composer update

Writing lock file
Generating autoload files

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值