Configuración de git#
Después de instalar git en el equipo, se debe realizar la configuración de la herramienta utilizando el comando git config como está descrito en la documentación.
Configuración de la identidad de usuario en git#
El programa git necesita conocer el nombre y dirección de correo de la persona que crea los commits.
$ git config --global user.name "Andrés Hernández"
$ git config --global user.email "andres.hernandez@ciencias.unam.mx"
Manejo de espacios en blanco en git#
$ git config --global core.whitespace blank-at-eol,blank-at-eof,space-before-tab
Configuración de caracteres de fin de línea en git#
GIT puede corregir los caracteres de fin de línea que utiliza Windows (CR-LF) para que sean compatibles con los de otros sistemas operativos más avanzados como GNU/Linux, macOS y BSD (LF).
Si utilizas alguno de estos sistemas operativos, entonces basta con activar la opción para convertir CR-LF en LF en los archivos de entrada.
$ git config --global core.autocrlf input
Cuando utilizas Windows, es necesario activar la conversión de CR-LF en LF en todos los casos.
$ git config --global core.autocrlf true
Verificar la configuración de git#
Verificar que la identidad del usuario se haya guardado en el archivo ~/.gitconfig.
$ cat ~/.gitconfig
[user]
name = Andres Hernandez
email = andres.hernandez@ciencias.unam.mx
[core]
whitespace = blank-at-eol,blank-at-eof,space-before-tab
autocrlf = input
Configuración de credenciales de git#
Configurar el almacenamiento de las credenciales en GIT:
- Almacenamiento persistente de las credenciales en disco (
git-credential-store) - Almacenamiento temporal de las credenciales en memoria RAM (
git-credential-cache)
Danger
Esta configuración se realiza para propósitos educativos con las siguientes restricciones
- Las credenciales se almacenan en TEXTO PLANO en el archivo
~/.cache/git/.git-credentials - Esta configuración no es recomendable para entornos de producción
-
La configuración recomendada se realiza con
git-credential-oauthogit-credential-manager, que manejan tokens OAuth para la autenticación- El tiempo de validez del token OAuth de GitLab es de dos horas, después de este tiempo se tendrá que seguir el flujo de nuevo (meter el código en la página de autenticación).
-
Esta característica está en la documentación de GitLab:
Almacenamiento de credenciales#
Inicializar la configuración del almacenamiento de credenciales
tonejito@debian-12:~$ git config --global --unset-all credential.helper
tonejito@debian-12:~$ git config --global --add credential.helper 'store --file ~/.cache/git/.git-credentials'
Verificar la configuración
tonejito@debian-12:~$ cat ~/.gitconfig
... ... ...
[credential]
helper = store --file ~/.cache/git/.git-credentials ✅
Crear los directorios y archivos necesarios con los permisos adecuados
tonejito@debian-12:~$ mkdir -vp ~/.cache/git/credential/
mkdir: created directory '/home/tonejito/.cache/'
mkdir: created directory '/home/tonejito/.cache/git/'
mkdir: created directory '/home/tonejito/.cache/git/credential/'
tonejito@debian-12:~$ chmod -c 0700 ~/.cache/git/ ~/.cache/git/credential/
mode of '/home/tonejito/.cache/git/' changed from 0755 (rwxr-xr-x) to 0700 (rwx------) ✅
mode of '/home/tonejito/.cache/git/credential/' changed from 0755 (rwxr-xr-x) to 0700 (rwx------) ✅
tonejito@debian-12:~$ touch ~/.cache/git/.git-credentials
tonejito@debian-12:~$ chmod -c 0600 ~/.cache/git/.git-credentials
mode of '/home/tonejito/.cache/git/.git-credentials' changed from 0644 (rw-r--r--) to 0600 (rw-------) ✅
Caché de credenciales#
Con el siguiente comando se configura git para guardar temporalmente las credenciales en memoria RAM por 1 día:
tonejito@debian-12:~$ git config --global --add credential.helper 'cache --timeout 86400'
Note
- Es posible almacenar las credenciales por 1 semana si se cambia el parámetro a
604800
Verificar la configuración
tonejito@debian-12:~$ cat ~/.gitconfig
... ... ...
[credential]
helper = store --file ~/.cache/git/.git-credentials
helper = cache --timeout 86400 ✅
Note
- Continúa en la siguiente página cuando hayas configurado los parámetros de GIT.
| ⇦ | ⇧ | ⇨ |
|---|---|---|
| Página anterior | Arriba | Página siguiente |