[git]安装git-pylint-commit-hook提升python项目中的代码质量

什么是'git-pylint-commit-hook'

我在工做中,团队为了保证代码和提升代码的质量,要求每一个项目都要求安装git-pylint-commit-hook,它是个钩子,会在你提交代码到本地版本库的时候,自动运行,根据配置文件pylintrc中的配置,去检测改动过文件中的代码,并会对其进行评分,若是未达到设置的分数线,则此次提交到本地版本库的操做(commit),强制取消。须要修改代码后,评分超过设定的分数,才能够提交到本地版本库。git

我发现这个是个很好的东西,因此就在本身的项目中也尝试安装使用,用来提升本身项目的代码质量。github

安装步骤以下:

  1. cd 你的项目文件,到你的项目根目录下(下面全部操做都是在项目根目录下操做)ui

  2. pip install -U git-pylint-commit-hook,安装git-pylint-commit-hook钩子code

  3. 输入mkdir .hooks/pre-commit,初始化钩子blog

  4. 输入chmod 755 .hooks/pre-commit,修改pre-commit权限,赋予可执行权限,并加入以下内容:
    #!/bin/sh # use pylint to check code, # Requirements: # pip install git-pylint-commit-hook # git-pylint-commit-hook --limit=9.0 --pylintrc=.pylintrc事件

    limit参数就是设定的最低评分。ip

  5. 输入touch .pylintrc,建立配置文件,并加入内容:pylintrc配置rem

  6. 输入ln -sf $(pwd)/.hooks/pre-commit .git/hooks/,关联到github的commit事件,也就是执行commit指令时,自动运行pre-commit脚本。get

最终效果

以后每次执行commit指令时,会自动对你的代码评分,以下图:it

这个钩子并不能彻底保证代码的质量,可是能够在必定程度上统一代码风格,从而提升项目的总体质量。刚开始,用的时候会有些不适应,就像俗话说的:“良药苦口利于病”。

注意:使用过程当中若是要忽略一些警告,则在[MESSAGES CONTROL]下,加入字段例如:disable=C0303,C0111,W0223,就能够忽略这些非代码风格的错误,提升分数。

相关文章
相关标签/搜索