Files
dotfiles/common/.config/templates/pre-commit
2024-12-16 21:40:00 +05:30

26 lines
787 B
Bash
Executable File

#!/bin/sh
#
# An example hook script to verify what is about to be committed.
# Called by "git commit" with no arguments. The hook should
# exit with non-zero status after issuing an appropriate message if
# it wants to stop the commit.
#
# To enable this hook, rename this file to "pre-commit".
# Check if Gitleaks is installed
if ! command -v gitleaks > /dev/null 2>&1; then
echo "Gitleaks is not installed. Skipping leak check."
echo "Please install Gitleaks for enhanced security."
exit 0
fi
# Run Gitleaks & check the exit code
if ! gitleaks protect --staged -v; then
echo "Gitleaks has detected potential secrets in your changes."
echo "Please remove any sensitive information before committing."
exit 1
fi
# If Gitleaks passes, allow the commit
exit 0