zoukankan      html  css  js  c++  java
  • [git]安装git-pylint-commit-hook提高python项目中的代码质量

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

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

    我发现这个是个很好的东西,所以就在自己的项目中也尝试安装使用,用来提高自己项目的代码质量。

    安装步骤如下:

    1. cd 你的项目文件,到你的项目根目录下(下面所有操作都是在项目根目录下操作)

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

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

    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参数就是设定的最低评分。**
    
    1. 输入touch .pylintrc,创建配置文件,并加入内容:pylintrc配置

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

    最终效果

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

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

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

  • 相关阅读:
    3305: Hero In Maze II (优先队列+bfs)
    2016年5月8日 GDCPC省赛总结
    POJ 2361 Tic Tac Toe
    about 字节
    KMP模式匹配
    scau 8616 汽车拉力比赛
    海盗分金--大于半数才成立
    scau 10692 XYM-入门之道
    函数模板和类模板成员函数的定义通常放在头文件中
    c语言运算符优先级巧记
  • 原文地址:https://www.cnblogs.com/xueweihan/p/5501532.html
Copyright © 2011-2022 走看看