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:

Limpia la configuración del programa helper que ayuda con el almacenamiento de credenciales y parámetros de autenticación de GIT.

tonejito@debian-12:~$ git config --global --unset-all credential.helper

Danger

Esta configuración se realiza para propósitos educativos con las siguientes restricciones


Caché de credenciales con git-credential-cache#

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
Valor Segundos
1 m 60
1 h 3600
1 d 86400
1 w 604800
1 m 2678400
1 y 31622400

Verificar la configuración

tonejito@debian-12:~$ cat ~/.gitconfig
	...	...	...
[credential]
	...
	helper = cache --timeout 86400	✅

Autenticación con git-credential-oauth#

Instala git-credential-oauth

root@debian-13:~# apt install git-credential-oauth
   man ...

Configura git-credential-oauth en el equipo

tonejito@debian-12:~$ git config --global --add credential.helper oauth

Verifica la configuración

tonejito@debian-12:~$ cat ~/.gitconfig
	...	...	...
[credential]
	...
	helper = oauth	✅

Almacenamiento de credenciales con git-credential-store#

Inicializar la configuración del almacenamiento de credenciales

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-------)	✅

Configuración de directorios de git#

Revisa en qué ruta se montó la carpeta compartida de VirtualBox

  • En este caso la carpeta compartida está montada en el directorio /media/sf_Public
tonejito@debian-13:~$ mount | grep vboxsf
Public on /media/sf_Public type vboxsf (rw,nodev,relatime,iocharset=utf8,uid=0,gid=989,dmode=0770,fmode=0770,tag=VBoxAutomounter)

Agrega la ruta a la "lista de directorios seguros" de git para el usuario actual

tonejito@debian-13:/media/sf_Public/tareas-redes$ git config --global --add safe.directory /media/sf_Public
tonejito@debian-13:/media/sf_Public/tareas-redes$ git config --global --add safe.directory '/media/sf_Public/*'

Verifica la configuración en el archivo ~/.gitconfig

redes@debian-13:~$ cat ~/.gitconfig
	...
[safe]
	directory = /media/sf_Public
	directory = /media/sf_Public/*

Note


Página anterior Arriba Página siguiente