今天发现了一个很棒的东西:Git 钩子。
Git 钩子在 .git/hooks/ 目录下面,git 已经提供了一些 example 供我们参考,比如:pre-commit, pre-push。在你执行 git 相应的操作的时候就会触发这些钩子。
你可以直接去掉 sample 后缀那些示例钩子就会生效。当然你也可以自己写钩子,任何可执行的脚本都是可以的。不过脚本名字是约定好的,这也是为什么示例钩子去掉 sample 后缀才会生效的原因。
我今天就写了一个很简单的 pre-commit 钩子:在 commit 前对 python 文件通过 pylint 执行格式检查。这样可以将错误的发现提前。不用等到代码 push 到服务器打包报错再发警报了。
#!/bin/sh
for f in `find . | grep ".py$"`
do
pylint --reports=n "$f" >> pylint.log
done
在 Windows 上安装 pylint
因为公司配的电脑是 Windows,所以还查了一下怎么在 Windows 上安装 pylint。
- 对于 Python 2.7.9 及以上版本以及提供了 pip 工具。然后通过 pip 就可以直接安装 pylint
python -m pip install pylint
- pylint 装好后发现不能直接调用,需要通过 python 调用,不开心。研究后发现 pylint 其实就是一个 exe 文件来的,cd 到 pylint 所在的目录是可以直接运行的。那其实只要将它放在环境变量里面就可以了。我选择了 copy 一个到 python 所在的目录,因为这个目录已经加到了环境变量。这样就可以直接调用 pylint 命令了。
参考阅读: