package versions import ( "fmt" "gitea.inhome.blapointe.com/local/notes-server/config" "strings" ) func getScript() string { maxSizeMB := config.MaxSizeMB if maxSizeMB == 0 { maxSizeMB = 1 } return strings.ReplaceAll(script, "{{{MAXSIZE}}}", fmt.Sprint(maxSizeMB<<20)) } const script = `#!/bin/bash function main() { local maxsize={{{MAXSIZE}}} if [[ "$maxsize" == 0 ]]; then return fi ( git diff --name-only --cached git diff --name-only git ls-files --others --exclude-standard ) 2>&1 \ | sort -u \ | while read -r file; do local size="$(du -sk "$file" | awk '{print $1}')000" if [ "$size" -gt "$maxsize" ]; then echo "file=$file, size=$size, max=$maxsize" >&2 git reset HEAD -- "$file" fi done } main `