¿Hay alguna forma de configurar globalmente git
para que no genere automáticamente el correo electrónico del usuario, si no está configurado y abortar la confirmación en su lugar?
$ git commit -m "test" [master (root-commit) 71c3e2e] test Committer: unknown <my.user@my.very.own.hostname> Your name and email address were configunetworking automatically based on your username and hostname. Please check that they are accurate.
Esto puede causar filtraciones graves de privacidad si el autor no es lo suficientemente cuidadoso como para verificar las advertencias de git
.
Esto se puede hacer con git
pre-commit hook, siguiendo la sugerencia de @cupcake .
Crea un file llamado pre-commit
manera:
#!/bin/sh git config user.name >/dev/null 2>&1 if [[ $? != 0 ]]; then echo "Error: user.name is undefined. Use 'git config user.name \"Your Name\"' to set it." exit 1 fi git config user.email >/dev/null 2>&1 if [[ $? != 0 ]]; then echo "Error: user.email is undefined. Use 'git config user.email you@example.com' to set it." exit 1 fi
Si es necesario, hazlo ejecutable con chmod +x pre-commit
Tira este file a las templates de git
hook globales:
En los sistemas * nix esto se encuentra en
/usr/share/git-core/templates/hooks
En Windows esto se puede encontrar típicamente en
%ProgramFiles%\Git\share\git-core\templates\hooks
Vuelva a inicializar sus git
existentes con git init
.