#!/bin/bash # Path para o Swiftlint SWIFTLINT_PATH=/opt/homebrew/bin/swiftlint # Verifica se o Swiftlint está instalado if ! command -v $SWIFTLINT_PATH &> /dev/null; then echo "Swiftlint não encontrado. Certifique-se de que está instalado." exit 1 fi # Obtém arquivos em diff que ainda não foram commitados files=$(git diff --cached --name-only --diff-filter=ACM | grep "\.swift$") # Verifica se existem arquivos Swift para lint if [ -n "$files" ]; then echo "Executando Swiftlint nos arquivos alterados..." lint_output=$($SWIFTLINT_PATH lint $files) lint_errors=$(echo "$lint_output" | grep "error:") if [ -n "$lint_errors" ]; then echo "Erros do Swiftlint encontrados:" echo "$lint_errors" echo "Corrija os problemas de lint antes de commitar." exit 1 else echo "Swiftlint warnings:" echo "$lint_output" fi fi exit 0