git-lint pylint没有运行pylintrc文件
我为我的Python项目使用git-lint。git-lint pylint没有运行pylintrc文件
我有一个.gitlint.yaml
文件在我的git仓库,其中包含,除其他事项外的根,
pylint:
extensions:
- .py
command: pylint
arguments:
- "--rcfile={DEFAULT_CONFIGS}/.pylintrc" # doesn't seem to work
- "--disable=all" # doesn't work either
- "--output-format=text"
- "--msg-template='{{abspath}}:{{line}}:{{column}}: [{{category}}:{{symbol}}] {{obj}}: {{msg}}'"
- "--reports=n"
filter: "^{filename}:(?P<line>{lines}):((?P<column>\\d+):)? \\[(?P<severity>.+):(?P<message_id>\\S+)\\]\\s+(:)?(?P<message>.+)$"
installation: "Run pip install pylint."
我甚至创造了一个~/.config/pylintrc
文件,其中包含,除其他事项外,
indent-string=\t
但是,当我运行git lint
,没有警告被禁用,尤其是不是警告line 41, col 0: Warning: [mixed-indentation]: Found indentation with tabs instead of spaces
警告。
我已经完成(并验证)~/.config/pylintrc
文件根本没有被处理。
为什么pylint忽略所有配置选项?我可以采取哪些故障排除步骤?我最好的猜测是,当由git lint执行时,pylint由除我以外的某个用户运行。
我看到test/unittest/test_gitlint.py
:
self.root = '/home/user/repo'
git_config = os.path.join(self.root, '.gitlint.yaml')
那么你的配置应该是在正确的地方。
但请检查您是否没有缓存问题(/home/user/.git-lint/cache
),如issue 34中所述。
如果在写入缓存后
.gitlint.yaml
已更新,则应该使输出缓存失效。
否则,您可以编辑配置为例如忽略错误类型,但重新运行时它仍然存在。
你说得对,有一个缓存问题。我想这个问题也没有解决方案。另外,我已确认'{DEFAULT_CONFIGS} /。pylintrc'路径也不起作用。当我用绝对路径替换它时,它起作用。你知道我可以在哪里设置'DEFAULT_CONFIGS'变量吗? – mareoraft
@mareoraft不知道:我看到它在这里定义:https://github.com/sk-/git-lint/blob/34d738e0a2a12828b28cd0556d1a20447357c0fa/gitlint/linters.py#L137-L139。我可以看到v0.0.5(https://github.com/sk-/git-lint/blob/34d738e0a2a12828b28cd0556d1a20447357c0fa/README.rst#v005-2014-05-09)“变量'%(REPO_HOME)'和'%(DEFAULT_CONFIGS)'可以在配置中指定“ – VonC
它们无法解释应该在哪里以及如何指定这些变量。 – mareoraft
也许我需要做一些事情来设置DEFAULT_CONFIGS到repo目录? – mareoraft