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

pre-commit更新后报InvalidManifestError:language字段值不符合要求

解决pre-commit更新后出现InvalidManifestError的问题

问题核心是pre-commit更新后不再支持python_venv这个语言类型,该类型已经被合并到python选项中(pre-commit的python语言现在默认使用虚拟环境,和原python_venv功能完全一致)。

解决步骤:

  • 修改目标仓库的hook配置:
    找到报错仓库(https://example.com/some/repo)中的.pre-commit-hooks.yaml文件,将language: python_venv替换为language: python。如果是你维护的仓库,直接提交修改即可。

  • 在本地配置中覆盖设置(第三方仓库场景):
    如果这个仓库是第三方维护的,暂时无法等待作者更新,可以在自己项目的.pre-commit-config.yaml里,针对该hook添加语言覆盖配置:

    - repo: https://example.com/some/repo
      rev: 你的使用版本号
      hooks:
        - id: some-hook-id
          language: python  # 这里覆盖原有的python_venv设置
    
  • 临时回退pre-commit版本(不推荐长期使用):
    若以上方案暂时无法执行,可以回退到之前能正常运行的pre-commit版本,比如:

    pip install pre-commit==<你之前用的版本号>
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.17 12:55:55