Credenciales en git
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.
Guardar credenciales de Git[editar]
El comando git para que nuestras credenciales se guarden 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.
Guardar credenciales de Git en memoria[editar]
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 guardará nuestro usuario y password de git 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[editar]
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
Cambiar las credenciales de git en fichero[editar]
Puesto que el fichero está en texto plano, es sencillo. Basta buscar la password y cambiarla. Un ejemplo del contenido del fichero puede ser este
https://username:password@gitserver.com
Almacenar credenciales en gestor de credenciales de windows[editar]
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.
Cambiar la password de Git en Windows[editar]
Si usas el gestor de credenciales de windows y si cambias la password en tu servidor de Git, debes cambiarla también en el almacén de credenciales de windows. En Windows 10, abre el panel de control de windows -> Cuentas de Usuario -> Credenciales de Windows. Te aparecerá una ventana con todas las credenciales que tiene guardadas windows. Busca la de tu servidor Git y pulsa "Editar". Podrás cambiar el usuario/password.