You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

回滚npm包至旧版本失败?commitlint版本回退遇依赖问题

关于npm依赖版本机制的问题(以commitlint为例)
  • 我已使用commitlint npm包校验提交信息数月,还基于TypeScript开发了适配仓库规则的commitlint插件。
  • commitlint发布17.4.0版本后,升级了TypeScript依赖版本,导致我的插件编译失败(涉及any类型问题,后续排查)。

尝试的临时方案及问题

  • 为临时解决问题,我试图在CI流程中回滚至commitlint v17.3.0,执行命令:
    npm install @commitlint/config-conventional@17.3.0
    
    但仍出现TypeScript编译错误。
  • 尝试全局安装(添加-g参数、使用sudo),问题依旧。查看CI日志发现npx调用时出现提示:

    npm WARN exec The following package was not found and will be installed: commitlint@17.4.0
    即npx未识别到已安装的旧版本。

  • 随后尝试直接在npx命令中指定版本:
    npx commitlint@17.3.0 --from HEAD~1 --to HEAD --verbose
    
    结果仍然失败,日志显示安装commitlint@17.3.0后依旧出现TypeScript编译错误。

疑问

  • 旧版本的npm包是否会仍然指向最新版的依赖包?这是否是npm/npx的bug?

更新发现

  • commitlint依赖@commitlint/types包,但该包似乎没有17.3.0版本。

内容的提问来源于stack exchange,提问作者knocte

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 21:20:29