2012-08-14 72 views
0

有什麼方法可以在git服務器端設置Python源代碼檢查嗎?在git服務器上檢查樣式

像這樣的東西(這是pre-commit鉤):

#!/bin/sh 
FILES=$(git diff --cached --name-only --diff-filter=ACM | grep -e '\.py$') 

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

,但在服務器端(也許update鉤)。

+0

你在服務器上使用裸倉庫嗎? – 2012-08-14 11:39:34

+0

我不確定我瞭解你 – qutron 2012-08-14 11:40:31

回答

2

您可以添加更新掛鉤,該掛鉤將以${ref} ${oldrev} ${newrev}的格式獲取輸入文件,例如,像refs/heads/master ddf343f635fe4440cad528e12f96f28bd50aa099 f59abbf28696389c91c2697c7db31f20cfa91d8a

用這些知識武裝起來,然後你可以在這兩個提交之間進行區分,列出那裏的文件,檢查它們的語法,以及在你不喜歡它們的情況下失敗。如果推送了一個全新的分支,則${oldrev}將爲40個零,因此您必須檢查新提交中的所有文件。