Credenciales en git

From ChuWiki
Revision as of 13:02, 27 November 2021 by Chudiang (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

git nos pide usuarios y password cada vez que intentamos acceder al repositorio remoto. Sin embargo, tenemos varias opciones para almacenar nuestro usuario y contraseña de forma que no nos las pida cada vez. Veámoslas.

Almacenar credenciales[edit]

El comando git para que nuestras credenciales se almacenen en algún sitio es

git config credential.helper ...

o bien, si no queremos que sea solo para el repositorio en el que estamos trabajando, sino que sea de forma global para toda la instalación de git en nuestro ordenador

git config --global credential.helper ...

Pondremos los comandos de ejemplo con la opción --global, por lo que afectará a todos los repositorios de nuestro ordenador. Puedes quitarla si quieres que sólo afecte al repositorio actual de trabajo.

Almacenar credenciales en memoria[edit]

Una opción es almacenar las credenciales en memoria. Esto valdrá durante un tiempo o hasta que apaguemos el ordenador

git config --global credential.helper cache

Esto almacena las credenciales en memoria, por defecto durante 15 minutos. Tienes la opción --timeout <segundos> si quieres cambiar este tiempo

git config --global credential.helper cache --timeout 30000

Almacenar credenciales en fichero[edit]

Se pueden almacenar las credenciales en un fichero. Se almacenan en claro, por lo que no es un método seguro si el ordenador es compartido. El comando es

 git config --global credential.helper store

El fichero por defecto está en ~/.git-credentials, es decir, en el fichero .git-credentials en el directorio HOME del usuario. El fichero se puede cambiar con la opción --file

git config --global credential.helper store --file ~/.my-credentials

Almacenar credenciales en gestor de credenciales de windows[edit]

Este mecanismo teóricamente es válido también para MacOS y para linux, aunque sólo lo he probado con Windows. Las versiones modernas de git vienen con un gestor de credenciales que se integra con el gestor de credenciales del sistema operativo que uses. Si lo tienes instalado, el comando para usarlo sería este

git config --global credential.helper manager

Esto hará que las credenciales las guarde el sistema operativo. En el caso de windows, la primera vez que lo uses te pedirá con un diálogo el usuario y password, lo almacenará y será válido de forma permanente, hasta que cambies el password.