Antes de comenzar a usar Git, es importante configurar lo correctamente en tu sistema. En este post vamos a aprender a personalizar el entono de Git.
Git posee una herramienta de configuran llamada git config que permite obtener y establecer las variables de configuración que controlan el aspecto y funcionamiento de Git.
Antes de empezar
- Nos guiaremos principalmente de la documentación oficial que la encontrara en https://git-scm.com/book/es/v2/Inicio---Sobre-el-Control-de-Versiones-Configurando-Git-por-primera-vez
Enlaces de interés
Resumen
- Esta configuración la realizaremos una sola vez, aunque también la puede cambiar en cualquier momento.
- Verificar que Git está instalado
git --version - Configurar usuario y correo global
git config --global user.nameygit config --global user.email - Configurar usuario y correo en proyecto
git config user.nameygit config user.email - Definir editor de texto
git config --global core.editor - Establecer el nombre de la rama principal
git config --global init.defaultBranch main - Habilitar colores
git config --global color.ui auto - Configurar credenciales
git config --global credential.helper store - Ver la configuración actual
git config --list
Ubicación de los archivos de configuración de Git en distintos sistemas operativos
Niveles de configuración en Git
Git permite tres niveles de configuración, cada uno con un archivo específico:
| Nivel | Archivo | Descripción |
|---|---|---|
| Sistema | /etc/gitconfig (Linux/macOS) o C:\Program Files\Git\etc\gitconfig (Windows) | Afecta a todos los usuarios del sistema |
| Global (Usuario) | ~/.gitconfig (Linux/macOS) o C:\Users\TU_USUARIO\.gitconfig (Windows) | Afecta solo al usuario actual |
| Local (Proyecto) | .git/config dentro del repositorio Git | Afecta solo al repositorio actual |
Cada nivel sobrescribe los valores del nivel anterior, por lo que los valores de .git/config tienen preferencia sobre los de /etc/gitconfig.
Ubicación de los archivos de configuración por sistema operativo
Linux/macOS
Configuración del sistema (para todos los usuarios):
/etc/gitconfig
Configuración global (para el usuario actual):
~/.gitconfig o ~/.config/git/config
Configuración local (por repositorio):
/ruta/del/repositorio/.git/config
Ver la configuración de cada nivel en Linux/macOS:
Configuración del sistema
git config --system --list
Configuración del usuario
git config --global --list
Configuración del repositorio actual
git config --local --list
Windows
Configuración del sistema (para todos los usuarios):
C:\Program Files\Git\etc\gitconfig
Configuración global (para el usuario actual):
C:\Users\TU_USUARIO\.gitconfig
Configuración local (por repositorio):
C:\ruta\del\repositorio\.git\config
Ver la configuración de cada nivel en Windows (PowerShell o CMD):
git config --system --list # Configuración del sistema
git config --global --list # Configuración del usuario
git config --local --list # Configuración del repositorio actual
Configuración inicial de Git
Verificar si Git está instalado
Abre la terminal o símbolo del sistema y escribe:
git --version
Si Git está instalado, verás una salida similar a esta:
git version 2.40.1
Si no está instalado, debes descargarlo desde git-scm.com e instalarlo.
Configurar el usuario y correo electrónico
Git necesita saber quién está haciendo los cambios en el código. Para configurar lo, usa los siguientes comandos:
Ejemplo en proyecto local
git config user.name "Tu Nombre"
git config user.email "tuemail@example.com"
Verifica con:
git config --list
Ejemplo configuración global
git config --global user.name "Juan Pérez"
git config --global user.email "juanperez@gmail.com"
Verifica con:
git config --global --list
Salida esperada:
user.name=Juan Pérez
user.email=juanperez@gmail.com
Configurar longpaths
git config — global core.longpaths true
Configurar pull rebase
git config pull.rebase false
Configurar el editor predeterminado
Git usa un editor de texto para escribir mensajes de commit. Puedes definir tu editor favorito con:
VS Code:
git config --global core.editor "code --wait"
Nano:
git config --global core.editor "nano"
Vim:
git config --global core.editor "vim"
Configurar el nombre de la rama principal
Desde Git 2.28+, se puede definir el nombre de la rama principal al crear un repositorio:
git config --global init.defaultBranch main
Esto es importante porque antes la rama principal se llamaba "master", pero ahora se recomienda usar "main".
Habilitar colores en Git
Para que los comandos de Git tengan salida en color y sean más fáciles de leer:
git config --global color.ui auto
Configurar credenciales para GitHub
Si quieres que Git recuerde tu usuario y contraseña para no escribirlas cada vez, usa:
git config --global credential.helper store
Cuando hagas git push, Git te pedirá usuario y contraseña una sola vez y las guardará.
Ver todas las configuraciones de Git
Puedes ver toda la configuración de Git con:
git config --list
Si quieres ver la configuración de un usuario en particular:
git config --global user.name
git config --global user.email