Python 检查git服务器上的样式

Python 检查git服务器上的样式,python,git,hook,Python,Git,Hook,有没有办法在git服务器端设置Python源代码检查 类似这样的内容(这是pre-commithook): 但是在服务器端(可能使用updatehook)。您可以添加一个更新钩子,它将以${ref}${oldrev}${newrev}的格式获取输入文件,例如refs/heads/master ddf343f635fe4440cad528e12f96f28bd50aa099 F59ABF286389C91C2697C7DB31F20CF91D8A 有了这些知识,您就可以区分这两个提交,列出其中的文

有没有办法在git服务器端设置Python源代码检查

类似这样的内容(这是
pre-commit
hook):


但是在服务器端(可能使用
update
hook)。

您可以添加一个更新钩子,它将以
${ref}${oldrev}${newrev}
的格式获取输入文件,例如
refs/heads/master ddf343f635fe4440cad528e12f96f28bd50aa099 F59ABF286389C91C2697C7DB31F20CF91D8A


有了这些知识,您就可以区分这两个提交,列出其中的文件,检查它们的语法,如果您不喜欢它们,就可以失败。如果推送了一个全新的分支,
${oldrev}
将为40个零,因此您可能必须检查新提交中的所有文件。

是否在服务器上使用裸存储库?我不确定是否理解您的意思
#!/bin/sh
FILES=$(git diff --cached --name-only --diff-filter=ACM | grep -e '\.py$')

if [ -n "$FILES" ]; then
    flake8 -r $FILES
fi