Cómo comprobar si se ha configurado el correo electrónico de un usuario de Git

GitGitBeginner
Practicar Ahora

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

En este laboratorio, aprenderás cómo verificar la dirección de correo electrónico del usuario de Git que has configurado. Exploraremos cómo Git almacena y recupera esta información, comprendiendo la diferencia entre las configuraciones globales y locales.

Ejecutarás comandos para mostrar tu configuración actual de correo electrónico, comprobarás explícitamente las configuraciones globales y verás cómo se comporta Git cuando no se ha configurado ningún correo electrónico. Esta experiencia práctica te ayudará a entender cómo Git atribuye los commits y cómo gestionar tu identidad en diferentes repositorios.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL git(("Git")) -.-> git/SetupandConfigGroup(["Setup and Config"]) git(("Git")) -.-> git/GitHubIntegrationToolsGroup(["GitHub Integration Tools"]) git/SetupandConfigGroup -.-> git/config("Set Configurations") git/GitHubIntegrationToolsGroup -.-> git/cli_config("Configure CLI") subgraph Lab Skills git/config -.-> lab-560116{{"Cómo comprobar si se ha configurado el correo electrónico de un usuario de Git"}} git/cli_config -.-> lab-560116{{"Cómo comprobar si se ha configurado el correo electrónico de un usuario de Git"}} end

Ejecutar git config user.email

En este paso, exploraremos cómo Git almacena tu dirección de correo electrónico. Git utiliza tu dirección de correo electrónico para identificarte en el historial de commits. Esto es importante para rastrear quién hizo qué cambios, especialmente cuando se colabora con otros.

Anteriormente configuramos una dirección de correo electrónico global en la sección de configuración. Veamos cómo Git recupera esta información.

Abre tu terminal y ejecuta el siguiente comando:

git config user.email

Deberías ver la dirección de correo electrónico que se configuró globalmente:

[email protected]

Este comando le dice a Git que muestre el valor de la configuración user.email. Cuando se ejecuta git config sin especificar --global o --local, Git busca la configuración en un orden específico: primero local (específica del repositorio), luego global (específica del usuario) y, finalmente, a nivel de sistema. Dado que hasta ahora solo tenemos una configuración global, muestra el valor global.

Comprender cómo Git almacena y recupera configuraciones como tu correo electrónico es crucial para personalizar tu entorno de Git y garantizar que tus commits se atribuyan correctamente a ti.

Verificar la configuración de correo electrónico global vs local

En este paso, exploraremos la diferencia entre las configuraciones globales y locales de Git, específicamente para la configuración user.email.

Git te permite configurar ajustes en diferentes niveles:

  • Nivel de sistema: Se aplica a todos los usuarios del sistema.
  • Nivel global: Se aplica a un usuario específico del sistema (esto es lo que configuramos en la configuración inicial).
  • Nivel local: Se aplica solo al repositorio de Git actual.

Las configuraciones locales anulan las configuraciones globales, y las configuraciones globales anulan las configuraciones de sistema.

Primero, verifiquemos explícitamente la configuración global de correo electrónico utilizando la bandera --global:

git config --global user.email

Deberías ver la misma dirección de correo electrónico que antes:

[email protected]

Ahora, intentemos establecer una dirección de correo electrónico local específicamente para el repositorio my-time-machine que creamos en el laboratorio anterior. Asegúrate de que todavía estés dentro del directorio ~/project/my-time-machine.

cd ~/project/my-time-machine
git config user.email "[email protected]"

Este comando establece el user.email solo para el repositorio actual (my-time-machine). Observa que esta vez no usamos la bandera --global.

Ahora, verifiquemos el user.email nuevamente sin ninguna bandera mientras todavía estemos en el directorio my-time-machine:

git config user.email

¿Qué ves?

[email protected]

¡Muestra la dirección de correo electrónico local! Esto demuestra que la configuración local tiene prioridad sobre la configuración global dentro de este repositorio específico.

Si te fueras a navegar fuera del directorio my-time-machine y ejecutaras git config user.email nuevamente, mostraría la dirección de correo electrónico global porque no hay una configuración local fuera de ese repositorio.

Esta capacidad de establecer configuraciones locales es muy útil. Por ejemplo, podrías usar tu correo electrónico personal para proyectos personales (configuración global) pero tu correo electrónico de trabajo para proyectos relacionados con tu trabajo (configuración local dentro de los repositorios de esos proyectos de trabajo).

Probar con correo electrónico no configurado

En este paso, veremos qué sucede cuando Git no tiene una configuración de user.email en el nivel local, pero sí tiene una en el nivel global. Esto refuerza el concepto de prioridad de configuración.

Primero, asegúrate de que estemos en el directorio my-time-machine:

cd ~/project/my-time-machine

Ahora, desconfiguraremos la configuración local de user.email utilizando la bandera --unset:

git config --unset user.email

Este comando elimina la configuración user.email específicamente de la configuración del repositorio local. No afectará la configuración global.

Verifiquemos que la configuración local se haya eliminado intentando recuperarla:

git config --local user.email

Deberías ver un mensaje de error que indica que la clave de configuración no se encuentra en el nivel local:

error: key 'user.email' not found

Ahora, verifiquemos el user.email nuevamente sin ninguna bandera mientras todavía estemos en el directorio my-time-machine:

git config user.email

¿Qué esperas ver? Dado que la configuración local está desconfigurada, Git debería recurrir a la configuración global.

[email protected]

Como se esperaba, ahora muestra nuevamente la dirección de correo electrónico global. Esto confirma que cuando no hay una configuración local, Git utiliza la configuración global.

Este paso demuestra la jerarquía de configuraciones de Git. Git busca las configuraciones primero en el nivel local. Si no las encuentra allí, las busca en el nivel global y luego en el nivel de sistema. Esto permite una configuración flexible según tus necesidades para diferentes proyectos.

Resumen

En este laboratorio, aprendimos cómo verificar la dirección de correo electrónico del usuario de Git configurada utilizando el comando git config user.email. Exploramos cómo Git recupera esta información, priorizando primero las configuraciones locales, luego las globales y, finalmente, las de sistema. También verificamos explícitamente la configuración global de correo electrónico utilizando la bandera --global, comprendiendo la diferencia entre los niveles de configuración global y local y su prioridad.