git上看到的脚本,不用手工 给每个文件都加上一些生命, license等之类的东东。
REF_FILE="./hooks/boilerplate.go.txt"
if [ ! -e $REF_FILE ]; then
echo "Missing reference file: " ${REF_FILE}
exit 1
fi
LINES=$(cat "${REF_FILE}" | wc -l | tr -d ' ')
GO_FILES=$(find . -name "*.go" | grep -v -e "vendor")
for FILE in ${GO_FILES}; do
DIFFER=$(cat "${FILE}" | sed 's/2015/2014/g;s/2016/2014/g' | head "-${LINES}" | diff -q - "${REF_FILE}")
if [[ ! -z "${DIFFER}" ]]; then
echo "${FILE} does not have the correct copyright notice."
exit 1
fi
done
https://github.com/kubernetes/heapster/blob/master/hooks/check_boilerplate.sh