Need help with git-pylint-commit-hook?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

135 Stars 47 Forks Apache License 2.0 220 Commits 11 Opened issues


Git pre-commit hook to check Python code quality with pylint. You can use this hook to prohibit Python code with a bad syntax to be checked in.

Services available


Need anything else?

Contributors list


Pre-commit hook for Git checking Python code quality. The hook will check files ending with

or that has a she bang (#!) containing

The script will try to find pylint configuration files in the order determined by pylint. It also looks for a [pre-commit-hook] section in the pylint configuration for commit hook specific options.


Install via PyPI

pip install git-pylint-commit-hook


The commit hook will automatically be called when you are running

git commit
. If you want to skip the tests for a certain commit, use the
git commit -n


Settings are loaded by default from the .pylintrc file in the root of your repo.


command is for the actual command, for instance if pylint is not installed globally, but is in a virtualenv inside the project itself.

params lets you pass custom parameters to pylint

limit is the lowest value which you want to allow for a pylint score. Any lower than this, and the script will fail and won't commit.

Any of these can be bypassed directly in the pre-commit hook itself. You can also set a different default place to look for the pylintrc file.

Running tests

The test suite requires

to be installed. Install it with
pip install nose2
, then run the tests by executing the following command (in the project root folder):


This project supports Python 2.7 and Python 3.5. Please install other requirements via

pip install -r requirements.txt

Release notes

2.5.1 (2018-10-24)

  • Check if a file is ignored before checking if it's a python file #69

2.5.0 (2018-07-27)

  • Don't fail files with
    pylint: skip-file

2.4.0 (2018-03-12)

  • Skip
    parameter, if file not present #62

2.3.0 (2018-02-24)

  • Make stashing optional #56
  • Bug fix for pylinit 1.7.x #57

2.2.2 (2017-05-19)

  • Let the wrapper script call
    #55 contributed by coldnight

2.2.1 (2016-09-27)

2.2.0 (2016-09-08)

2.1.1 (2016-02-26)

2.1.0 (2016-01-18)

2.0.9 (2014-10-16)

2.0.7 (2014-10-16)

2.0.5 (2014-10-08)

2.0.5 (2014-05-06)

2.0.4 (2014-05-01)

2.0.3 (2014-02-07)

  • Fixed error in decimal representation

2.0.1 (2013-12-08)

2.0.0 (2013-12-08)

  • Documentation updated and moved to Read The Docs
  • git-pylint-commit-hook
    is now a regular command
  • Installation via PyPI:
    pip install git-pylint-commit-hook
  • Configurable using command line parameters. See the documentation for details

1.0.0 (2013-10-13)

  • Added support for default .pylintrc file, and also for loading our own options from there.

0.8 (2013-01-09)

0.7 (2012-12-07)

  • Bug when skipping files fixed. Wrong path was checked under some circumstanses

0.6 (2012-12-04)

0.5 (2012-12-01)

0.4 (2012-11-30)

0.3 (2012-11-18)

  • Fixed bug with non-python files getting checked, if they contained
    on the first row

0.2 (2012-11-16)

  • Added support for handling moved or deleted files

0.1 (2012-11-09)

  • Initial release of the commit hook

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.