#!/bin/sh
hard_limit=$(git config hooks.filesizehardlimit)
soft_limit=$(git config hooks.filesizesoftlimit)
: ${hard_limit:=10000000} # 10M
: ${soft_limit:=1000000} # 1M
list_new_or_modified_files()
{
git diff --staged --name-status|sed -e '/^D/ d; /^D/! s/.\s\+//'
}
unmunge()
{
local result="${1#\"}"
result="${result%\"}"
env echo -e "$result"
}
check_file_size()
{
n=0
while read -r munged_filename
do
f="$(unmunge "$munged_filename")"
h=$(git ls-files -s "$f"|cut -d' ' -f 2)
s=$(git cat-file -s "$h")
if [ "$s" -gt $hard_limit ]
then
env echo -E 1>&2 "ERROR: hard size limit ($hard_limit) exceeded: $munged_filename ($s)"
n=$((n+1))
elif [ "$s" -gt $soft_limit ]
then
env echo -E 1>&2 "WARNING: soft size limit ($soft_limit) exceeded: $munged_filename ($s)"
fi
done
[ $n -eq 0 ]
}
list_new_or_modified_files | check_file_size
gitlab hooks pre-commit 限制提交大小
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
- 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來迫摔,“玉大人沐扳,你說我怎么就攤上這事【湔迹” “怎么了沪摄?”我有些...
- 文/不壞的土叔 我叫張陵,是天一觀的道長纱烘。 經(jīng)常有香客問我步悠,道長裂七,這世上最難降的妖魔是什么辨宠? 我笑而不...
- 正文 為了忘掉前任才避,我火速辦了婚禮,結(jié)果婚禮上哺壶,老公的妹妹穿的比我還像新娘屋吨。我一直安慰自己,他們只是感情好山宾,可當我...
- 文/花漫 我一把揭開白布至扰。 她就那樣靜靜地躺著,像睡著了一般塌碌。 火紅的嫁衣襯著肌膚如雪渊胸。 梳的紋絲不亂的頭發(fā)上旬盯,一...
- 文/蒼蘭香墨 我猛地睜開眼疫稿,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了鹃两?” 一聲冷哼從身側(cè)響起遗座,我...
- 正文 年R本政府宣布号胚,位于F島的核電站代箭,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏涕刚。R本人自食惡果不足惜嗡综,卻給世界環(huán)境...
- 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望杜漠。 院中可真熱鬧极景,春花似錦、人聲如沸驾茴。這莊子的主人今日做“春日...
- 文/蒼蘭香墨 我抬頭看了看天上的太陽锈至。三九已至晨缴,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間峡捡,已是汗流浹背击碗。 一陣腳步聲響...
推薦閱讀更多精彩內(nèi)容
- 最近發(fā)現(xiàn),前些日子寫的SVN hooks pre-commit python腳本竟然不能支持中文路徑和文件名坷虑。提交...
- git掛鉤簡介 git hooks是一些自定義的腳本甲馋,用于控制git工作的流程,分為客戶端鉤子和服務端鉤子迄损。 客戶...
- 用git進行代碼管理摔刁,當我執(zhí)行g(shù)it commit操作時,會出現(xiàn) 這個命令要執(zhí)行很長時間海蔽,簡直喪心病狂共屈。經(jīng)查證后發(fā)...