我继承了time的一个问题,每次添加/升级另一个包时,我都必须删除/重新安装它。
我有一个gocd管道验证,每次我试图使用依赖项来解决回购上的安全漏洞时都会失败。
就像这样..。
依赖项生成拉请求
验证失败,并出现错误“警告Lockfile对"prismjs@1.24.0”有错误的条目,忽略它“
拉下主分支>手动升级包>删除/安装prismjs@1.24.0
生成新的PR >验证成功,一切正常。
与主人合并
冲洗并重复。
我所看到的是,我的yarn.lock中有两个条目用于prismjs,并且删除它只删除1.24.0条目,如果删除1.24.0,验证仍然会失败,因为它找不到prismjs 1.24.0。
prismjs@1.24.0:
版本"1.24.0“
解析的"https://registry.yarnpkg.com/prismjs/-/prismjs-1.24.0.tgz#0409c30068a6c52c89ef7f1089b3ca4de56be2ac“完整性sha512-SqV5GRsNqnzCL8k5dfAjCNhUrF3pR0A9lTDSCUZeh/LIshheXJEaP0hwLz2t4XHivd2J/v2HR+gRnigzeKe3cQ==
prismjs@^1.23.0,prismjs@^1.8.4,prismjs@~1.17.0:
版本"1.26.0“
解析的"https://registry.yarnpkg.com/prismjs/-/prismjs-1.26.0.tgz#16881b594828bb6b45296083a8cbab46b0accd47“完整性sha512-HUoH9C5Z3jKkl3UunCyiD5jwk0+Hz0fIgQ2nbwU2Oo/ceuTAQAg+pPVnfdt2TJWRVLcxKh9iuoYDUSc8clb5UQ==
package.json:
“依赖关系”:{
“逗号分隔-标记”:"^1.0.0",
“椭圆”:"^6.0.0“
“把手”:"^4.1.2",
"http-proxy":"^1.17.0",
“https-代理”:"^2.2.1",
"immer":"9.0.6",
"ini":"^1.3.5",
“房客”:"^4.5.1",
“标价到-jsx”:"^6.9.1",
“合并深度”:"^3.0.2",
“嵌套对象-赋值”:"1.0.4",
“解析-标题”:"^2.0.0",
“棱镜”:"1.24.0",
“空格分隔-标记”:"^1.0.0",
"ssri":"^6.0.1“
“焦油”:"4.4.19",
“杀树”:"^1.1.0",
“ua-解析器-js”:"^0.7.9",
“url-解析”:"^1.4.3",
“websocket扩展”:">=0.1.1",
"y18n":"^4.0.0“
解析器:"^13.1.1“
},
“决议”:{
"prismjs":"^1.23.0",
“财产-费用”:"^2.0.3“
我对这个版本控制的工作方式比较陌生,就像我说的那样,我继承了这个问题,所以除了在github中可以看到的之外,我并没有真正的历史。
任何帮助都将不胜感激。
发布于 2022-06-17 16:37:06
通过运行yarn why prismjs,可以解释项目以外的其他包依赖于prismjs。
我不确定您是否有其他依赖于prismjs的包来解释这些其他条目。似乎有些依赖关系是由我来承担的。如果您已经安装了monorepo或者使用了嵌套包,这可以解释这一点。
根据纱线文档的说法,也许也是有用的信息
如果您的分辨率版本或范围与原始版本范围不兼容,您将收到警告。嵌套包可能无法正常工作。
https://stackoverflow.com/questions/70970863
复制相似问题