用于Flake8、Isort和Eslint的Git挂钩

precog的Python项目详细描述


#预编码 为了在你犯罪之前阻止你的罪行。

安装

要从pypi安装,请运行pip install preco。安装 gitwook,运行preco。这将尝试写入预提交文件 ( git /Hooks/Primest),如果已经存在,将中止,因此 如果要使用preco,请移动或移除它。

用法

一旦安装了preco,就会检查您的提交 顺从。默认情况下,如果有任何flake8isort EsLITE不要干净地退出,但不必费力修复。 问题。预提交文件包含 选项,但可以使用环境变量重写行为 提交时,或者如果可以编辑预提交文件中的默认值。

示例:

要完全跳过所有检查(如对于正在进行的工作提交): ` STRICT="" git commit -m "wip" ` 这仍然会打印问题,但会让提交完成。

跳过ISORT: ` ISORT_STRICT="" git commit -m "wip - todo: fix imports" `

isort_force选项

这个有点疯狂。因为isort知道如何解决问题 它发现(虽然flek8和eslint没有),而不是抱怨 对于您,此选项告诉precog将更改的文件调整为 符合isort检查。虽然这有点吓人 默认情况下禁用。

如果一个文件的所有部分都是为了提交而暂存的,那么 直接向前:precog将只在文件上运行isort,然后 重新添加它以将这些更改包含在提交中。但如果只是 文件已暂存,因此我们不想添加整个文件。所以我们 使用-k选项来保存未保存的 变化。然后我们运行isort,添加文件,然后弹出存储。

这里面几乎肯定有边缘的箱子,如果它弄脏了你的 承诺,那我很抱歉。出于你的悲伤,公关/问题可能会上升到 别再发生了。

与eslint集成

要对javascript进行lint操作,preco将对任何更改调用eslint .js文件。因为它不是python依赖项,所以安装preco 不尝试安装eslint,但将尝试在 节点模块/.bin/eslint。如果找不到它,它会假设 是全局安装的。您可以设置环境 如果找不到变量-如果是,您可能希望将其设置为 预提交文件中的默认值。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
如何在Eclipse中设置Java路径,以便在外部驱动器上运行它?   在windows上使用Java服务包装器GUI与桌面交互   java是与此字符序列不匹配的正则表达式   java无法使用kafka管理客户端API创建具有所需分区的kafka主题   java基于单个单元格值获取整个excel行   当使用Spring的构造函数注入时,java bean是否在构造函数中完全初始化?   java重置LineNumberReader的计数器   将字符串从Java文件传递到jQuery   安卓在来自不同Java类文件的活动中祝酒   java在使用mvvm时如何在zk中更新progressmeter   使用regex获取由“”Java包围的值   使用tester类的java猜谜游戏   api响应的java POJO,其密钥为“”   java正则表达式,用于匹配长度大于n的字母和数字字符串?   java如何使用Json保存和恢复RecyclerView项的位置   在Java中用字符代码替换字符串   Jenkins中的java PermGen错误   java swing panel问题   boolean在Java中,false如何可能等于true   java如何使用Servlet从HTML表单中检索“分组”项?