/
dmitry_simakov
/
Kilogram
Обзор
Документация
Войти
/
dmitry_simakov
/
Kilogram
Код
Запросы
0
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
main
tools/git-hooks/pre-commit
42 строки
1022 B
Dmitry Simakov
git-hooks
18 янв 2026, 11:30
18 янв 2026, 11:30
8c4eafb
Код
Авторство
О чём код?
#!/usr/bin/env bash # region Ktlint CHANGED_FILES="$(git --no-pager diff --name-status --no-color --cached | awk '$1 != "D" && $NF ~ /\.kts?$/ { print $NF }')" if [ -z "$CHANGED_FILES" ]; then echo "No Kotlin staged files." exit 0 fi; echo "Running ktlint over these files:" echo "$CHANGED_FILES" ./gradlew --quiet ktlintFormat -PinternalKtlintGitFilter="$CHANGED_FILES" echo "Completed ktlint run." echo "$CHANGED_FILES" | while read -r file; do if [ -f $file ]; then git add $file fi done # endregion Ktlint # region Detekt echo "Running detekt check..." OUTPUT="/tmp/detekt-$(date +%s)" ./gradlew -Pprecommit=true detekt > $OUTPUT EXIT_CODE=$? if [ $EXIT_CODE -ne 0 ]; then cat $OUTPUT rm $OUTPUT echo "***********************************************" echo " detekt failed " echo " Please fix the above issues before committing " echo "***********************************************" exit $EXIT_CODE fi rm $OUTPUT # endregion Detekt exit 0