git pre-commit workflow

栏目: 编程工具 · 发布时间: 7年前

git

git

发布日期:   2019-03-06

阅读次数:  

之前看了程序人生的一篇code is law,做了点小小的实践。想起在QQ群看到一个人的分享截图,于是就想将之前做的实践查到的资料删减翻译下整理成文章,如果万一有团队内部的技术分享会还是可以分享下的。

我想遵循pep8,我不想手动格式化代码,我不想每次手动执行flake8来检查,甚至我不想手动执行mypy去检查我代码。

那么有什么办法呢,作为开发,日常最常执行的操作git commit必然是其中之一,无论是通过IDE的GUI工具还是命令行的方式。

通过git提供的pre-commit的hook可以在commit的时候将代码格式化,规范检查,测试等执行完毕,而不需要工程师手动做相关的操作。流程类似这样的:

git pre-commit workflow

通过采用 pre-commit 这个 Python 编写的库只需要以下几步就可以完成上述任务。

pipenv install -dev pre-commit

比如你想用flak8检查代码规范,那么例子如下:

repos:
-   repo: https://github.com/pre-commit/pre-commit-hooks
    rev: v1.2.3
    hooks:
    - id: flake8

repos是顶层的,每个hook都可以增加一个repo的section。

有时候我们自己的标注和pep8的略有不同,那么可以在当前目录下增加 .flake8 来告诉flake8我们自己的客制化。

[flake8]
ignore = E203, E266, E501, W503, F403, F401
max-line-length = 79
max-complexity = 18
select = B,C,E,F,W,T4,B9
  • 本文章原文及本文的图片来自 这里 版权归原作者所有

你的赏识是我前进的动力

git pre-commit workflow
git pre-commit workflow

转载请注明: 世界的过客 git pre-commit workflow

本篇

git pre-commit workflow git pre-commit workflow

之前看了程序人生的一篇code is law,做了点小小的实践。想起在QQ群看到一个人的分享截图,于是就想将之前做的实践查到的资料删减翻译下整理成文章,如果万一有团队内部的技术分享会还是可以分享下的。 我想遵循pep8,我不想手动格式化

2019-03-06 git

git

下一篇 

git pre-commit workflow ycmd server SHUT DOWN Unexpected exit code -11

What issue?The ycmd server SHUT DOWN (restart with ‘:YcmRestartServer’). Unexpected exit code -11. Try fix./install.py -

2018-11-27 vim

ycm


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

数字乌托邦

数字乌托邦

尼古拉斯•卡尔 / 姜忠伟 / 中信前沿出版社 / 2018-5 / 69.00

当下,技术与我们的关系变得越来越紧密不可分割,特别是智能手机等设备的出现,带给整个人类社会一场彻底的变革。的确,智能手机上的各种应用程序让我们的工作生活无比便利:社交媒体让我们能够和他人实时保持联络并传输信息,不再受时间、地点的限制;搜索引擎通过精准的算法将我们所需要的信息整合推送至屏幕上,让我们毫不费力就看到自己想要的;地图软件为我们的出行提供了更多路线选择,甚至可以使用语音导航,帮助我们顺利到......一起来看看 《数字乌托邦》 这本书的介绍吧!

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具