Si trabajas en múltiples proyectos con diferentes cuentas de correo (personal, trabajo, clientes), es útil configurar un nombre y email específico para cada repositorio. Esto asegura que tus commits siempre tengan la información correcta según el contexto del proyecto
¿Por qué es útil?
Cuando trabajas con proyectos personales y profesionales, necesitas que cada commit use el email correcto:
- Proyectos personales: tu email personal
- Proyectos del trabajo: tu email corporativo
- Proyectos de clientes: el email específico del cliente
En lugar de cambiar manualmente la configuración cada vez, puedes automatizarlo
Configuración paso a paso
1. Crear un archivo .gitconfig
en cada proyecto
En la raíz de cada proyecto, crea un archivo .gitconfig
con la información específica:
# .gitconfig en la raíz del proyecto
[user]
name = Alberto Rivas
email = alberto@albrivas.com
2. Referenciar los archivos en la configuración global de Git
Edita tu archivo principal de Git (ubicado en ~/.gitconfig
o /Users/tu-usuario/.gitconfig
) y añade referencias condicionales:
[includeIf "gitdir:/Users/albertorivas/Documents/Proyectos/Android/GasGuru/"]
path = /Users/albertorivas/Documents/Proyectos/Personal/GasGuru/.gitconfig
[includeIf "gitdir:/Users/albertorivas/Documents/Proyectos/Personal/pictoplate-flutter/"]
path = /Users/albertorivas/Documents/Proyectos/Personal/pictoplate-flutter/.gitconfig
Importante: Asegúrate de que las rutas terminen con /
para que Git las reconozca correctamente
3. Verificar la configuración
En la raíz de cada proyecto, ejecuta estos comandos para comprobar que se está usando la configuración correcta:
git config user.name
git config user.email
Deberías ver el nombre y email específicos que configuraste para ese proyecto
Ventajas
- ✅ Automatización: No necesitas recordar cambiar la configuración manualmente
- ✅ Sin errores: Cada commit usa automáticamente la identidad correcta
- ✅ Organización: Mantén separadas tus identidades personal y profesional
- ✅ Flexibilidad: Puedes tener tantas configuraciones como proyectos necesites
Consejos adicionales
-
Puedes usar patrones con comodines para aplicar la misma configuración a múltiples proyectos en una carpeta:
[includeIf "gitdir:~/Documents/Trabajo/**/"] path = ~/.gitconfig-trabajo
-
No olvides añadir
.gitconfig
a tu.gitignore
global si contiene información sensible que no quieres compartir
Con esta configuración, tus commits siempre tendrán la información correcta sin intervención manual