使用grunt可以配置一些代碼檢查的工具,但需要命令行方式運(yùn)行,因此如果能夠在git中提交代碼時(shí)自動(dòng)運(yùn)行會(huì)方便很多辉阶。那么git提供了hooks,位于項(xiàng)目根目錄下.git/hooks文件夾下嗡害,在hooks中有多個(gè)腳本可供選擇,那么用于提交畦攘,我們只需要編寫pre-commit腳本置于此處霸妹,便可在每次提交代碼時(shí)自動(dòng)運(yùn)行≈海基于這個(gè)方便的腳本叹螟,那么我們也可以增加一些其他功能,比如代碼文件編碼檢查或轉(zhuǎn)換台盯。
檢測(cè)utf8編碼和自動(dòng)運(yùn)行g(shù)runt的腳本如下:
#!/bin/sh
grunt --force
git ls-files -z -- <files> |
xargs -0 sh -c '
e=""
for f; do
if ! git show :"$f" |
iconv -f UTF-8 -t UTF-8 >/dev/null 2>&1; then
e=1
echo "Not UTF-8: $f"
#exit 255 # to abort after first non-UTF-8 file
fi
done
test -z "$e"
' -
將<files>*配置為需要檢測(cè)的文件罢绽。