Skip to content

Instantly share code, notes, and snippets.

@Ngofilho
Created March 19, 2021 02:11
Show Gist options
  • Save Ngofilho/342d50241f3a02182941e0252da1ea89 to your computer and use it in GitHub Desktop.
Save Ngofilho/342d50241f3a02182941e0252da1ea89 to your computer and use it in GitHub Desktop.
#!/bin/sh
COMMIT_MSG_FILE=$1
#Colocar este hook no diretorio global do git.
#Windows -> C:\Program Files\Git\mingw64\share\git-core\templates\hooks
#Linux -> which git -> /usr/bin/git
#MacOs -> brew info git -> /Library/Developer/CommandLineTools/usr/share/git-core/templates/hooks/
#ID de task definido por #99999. Exemplo: #12554
#((\w+)*\s(\#[0-9]{5}\b)) -> Primeiro grupo que valida pelo menos uma palavra seguida por espaÁo e pelo menos um ID de Task. Exemplo: string #12345
#((\#[0-9]{5}\b)\s(\w+)*) -> Segundo grupo que valida pelo menos um ID de Task seguido por espaÁo e seguido por pelo menos uma palavra. Exemplo: #12345 string
#((\w+)*\s(\#[0-9]{5}\b)\s(\w+)*) -> Terceiro Grupo que valida pelo menos uma palavra seguida por espaÁo e ID de Task seguid de espaÁo e seguida por pelo menos uma palavra. Exemplo: string #12345 string
regex="((\w+)*\s(\#[0-9]{5}\b))|((\#[0-9]{5}\b)\s(\w+)*)|((\w+)*\s(\#[0-9]{5}\b)\s(\w+)*)"
#regex=\#[0-9]{5,6}
if ! grep -iqE "$regex" "$COMMIT_MSG_FILE"; then
echo 'Preencha a menagem de commit com uma breve descricacao e com o ID da task com o formato #99999 - com o simbolo # incluso no final mais os numeros da task. Exemplo #32322'
exit 1
else
exit 0
fi
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment