预调试检查yaml错误:";流中应包含一个文档";

预调试检查yaml错误:";流中应包含一个文档";,yaml,pre-commit.com,Yaml,Pre Commit.com,我将precommit用于这个.pre-commit-config.yaml文件(摘录): 我被这个错误所困扰: Check Yaml...................Failed hookid: check-yaml expected a single document in the stream in "modules.yml", line 1, column 1 but found another document in "modules.yml", line 4, colu

我将precommit用于这个.pre-commit-config.yaml文件(摘录):

我被这个错误所困扰:

Check Yaml...................Failed
hookid: check-yaml

expected a single document in the stream
  in "modules.yml", line 1, column 1
but found another document
  in "modules.yml", line 4, column 1
我的yaml文件的开头是:

repo: ssh://git.tranquilit.local/odoo-11-oca-tis/OCB.git
root: 8.0
branch: 8.0-tis
---
repo: ssh://git.tranquilit.local/odoo-71-tis/tis-addons.git
origin: tis
branch: 8.0
modules:
    #- attachment_rename
    #- partner_firstname
    - tis_account_analytic_recurrent_invoicing
我试过用和不用引导线,但它只改变了错误的线nb

我在网上找不到任何帮助,所以如果有人能帮助我,我会非常感激

提前感谢,Herve将在您的文件中启动一个新的YAML文档。因此,您的文件中有两个YAML文档,这就是错误所抱怨的。根据pre-commit的文档,我假设您希望将其改为序列:

- repo: ssh://git.tranquilit.local/odoo-11-oca-tis/OCB.git
  root: 8.0
  branch: 8.0-tis
- repo: ssh://git.tranquilit.local/odoo-71-tis/tis-addons.git
  origin: tis
  branch: 8.0
  modules:
    #- attachment_rename
    #- partner_firstname
    - tis_account_analytic_recurrent_invoicing

该问题现在在预提交版本1.1.0中得到解决: 谢谢你的帮助

您可以通过设置
args:[--允许多个文档]
来启用此新选项,例如:

    hooks:
    -   id: check-yaml
        args: [--allow-multiple-documents]

您的解决方案是正确的,谢谢,但事实上我确实需要使用多文档yaml文件,因此您的解决方案不适合我的环境,有人有技巧预提交多文档yaml文件吗?将功能请求引导到预提交可能比在此处要求解决方法更好。但是,我想知道为什么需要多文档yaml文件。如果你在其他地方处理它,你不能改变这个过程来代替序列吗?对不起,我搜索了,但我没有找到关于预提交的功能请求放在哪里,你能给出相应论坛的地址来发布它吗?提前谢谢,Hervet这里有一个问题追踪者,我想这是正确的地方。但我不是pre-commit的维护者或用户。仅供参考,我在v2.5.0中遇到了同样的问题,此设置有帮助。
    hooks:
    -   id: check-yaml
        args: [--allow-multiple-documents]