it-swarm.dev

Quitar credenciales de Git

Estoy trabajando con varios repositorios, pero últimamente estaba trabajando en nuestro interno y todo fue genial.

Hoy tuve que ingresar y empujar el código en otro, pero estoy teniendo algunos problemas.

$ git Push appharbor master
error: The requested URL returned error: 403 while accessing https://[email protected]/mitivo.git/info/refs?service=git-receive-pack
fatal: HTTP request failed

No hay nada que pueda hacer, que traiga la contraseña nuevamente.

¿Cómo puedo restablecer las credenciales en mi sistema para que Git me solicite la contraseña de ese repositorio?

Yo he tratado:

  • git config --global --unset core.askpass

para anular la contraseña

  • git config credential.helper 'cache --timeout=1'

para evitar el caché de credenciales ...

Nada parece funcionar; ¿Alguien tiene una idea mejor?

404
balexandre

El caché de credenciales de Git ejecuta un proceso de daemon que almacena en caché sus credenciales en la memoria y las distribuye a pedido. Así que matar a git-credential-cache: el proceso del demonio desecha todo esto y le vuelve a pedir su contraseña si continúa usando esto como la opción cache.helper.

También puede deshabilitar el uso de la caché de credenciales Git utilizando git config --global --unset credential.helper. Luego, reinicie esto y continuará teniendo las credenciales en caché disponibles para otros repositorios (si los hay). Es posible que también deba hacer git config --system --unset credential.helper si se ha configurado en el archivo de configuración del sistema (por ejemplo, Git para Windows 2).

En Windows, puede que sea mejor usar el manager helper (git config --global credential.helper manager). Esto almacena sus credenciales en el almacén de credenciales de Windows que tiene una interfaz del Panel de Control donde puede eliminar o editar sus credenciales almacenadas. Con esta tienda, sus datos están protegidos por su inicio de sesión de Windows y pueden persistir en varias sesiones. El manager helper incluido en Git para Windows 2.x ha reemplazado el anterior wincred helper que se agregó en Git para Windows 1.8.1.1. Un ayudante similar llamado winstore también está disponible en línea y se usó con GitExtensions ya que ofrece una interfaz más manejada por GUI. El manager helper ofrece la misma interfaz GUI que winstore .

Extraiga de el manual de Windows detallando el panel de almacenamiento de credenciales de Windows:

Para abrir Cuentas de usuario, haga clic en el botón Inicio Imagen del botón Inicio, haga clic en Panel de control, haga clic en Cuentas de usuario y Seguridad familiar (o haga clic en Cuentas de usuario, si está conectado a un dominio de red) y luego haga clic en Cuentas de usuario. En el panel izquierdo, haga clic en Administrar sus credenciales.

468
patthoyts

Si este problema viene en una máquina con Windows, haga lo siguiente.

  • Ir al administrador de credenciales
  • Ir a credenciales de Windows
  • Eliminar las entradas bajo Credenciales genéricas
  • Intenta conectarte de nuevo. Esta vez, debería solicitarle el nombre de usuario y la contraseña correctos.

 Go to Credential Manager

 Go to Windows Credentials and Delete the entries under Generic Credentials

396

Vuelva a escribir:

$ git config credential.helper store

Y luego se le pedirá que ingrese sus credenciales nuevamente.

ADVERTENCIA

El uso de este ayudante almacenará sus contraseñas sin cifrar en el disco

Fuente: https://git-scm.com/docs/git-credential-store

132
aaafly

Me enfrenté al mismo problema que el OP. Llevaba mis antiguas credenciales de Git almacenadas en algún lugar del sistema y quería usar Git con mis nuevas credenciales, así que ejecuté el comando

$ git config --system --list

Mostró

credential.helper=manager

Cada vez que realicé git Push estaba tomando mi antiguo nombre de usuario, el cual me quedaba atrás, y quería usar una nueva cuenta de GitHub para impulsar cambios. Más tarde descubrí que mis antiguas credenciales de cuenta de GitHub estaban almacenadas en Panel de control Cuentas de usuario Administrador de credenciales Administrar credenciales de Windows .

 Manage Windows Credentials

Acabo de eliminar estas credenciales y cuando realicé git Push me pidieron mis credenciales de GitHub, y funcionó a la perfección.

61
Mourya

Trate de usar el siguiente comando.

git credential-manager

Aquí puede obtener varias opciones para administrar sus credenciales (ver la pantalla de abajo).

 Enter image description here

O incluso puedes probar directamente este comando:

git credential-manager uninstall

Esto comenzará a solicitar contraseñas de nuevo en cada solicitud de interacción del servidor.

39
Himanshu Aggarwal

En mi caso, Git está usando Windows para almacenar credenciales.

Todo lo que tiene que hacer es eliminar las credenciales almacenadas en su cuenta de Windows:

 Windows credentials menu

27
SoliQuiD

Encontré algo que me funcionó. Cuando escribí mi comentario al OP, no había podido verificar el archivo de configuración del sistema:

git config --system -l

muestra un

credential.helper=!github --credentials

línea. Lo desarmé con

git config --system --unset credential.helper

y ahora se olvidan las credenciales.

22
damix911
git config --list

mostrará credential.helper = manager (esto es en una máquina con Windows)

Para deshabilitar este nombre de usuario/contraseña en caché para su carpeta de git local actual, simplemente ingrese

git config credential.helper ""

De esta manera, git solicitará una contraseña cada vez, ignorando lo que se guarda dentro del "administrador".

12
Zhe Hu

En Windows 2003 Server con "wincred" *, ninguna de las otras respuestas me ayudó. Tuve que usar cmdkey .

  • cmdkey /list lista todas las credenciales almacenadas.
  • cmdkey /delete:Target borra la credencial con el nombre "Target".

 cmdkey /list; cmdkey /delete:Target

(* Por "Wincred" me refiero a git config --global credential.helper wincred)

11
ericbn

Necesidad de iniciar sesión con los respectivos github username y password

Para borrar el nombre de usuario y contraseña en Windows

Panel de control\Cuentas de usuario\Administrador de credenciales

Editar la credencial de windows

Elimine al usuario existente y ahora vaya al comando. Solicite escribir el comando Empujar. Muestra una ventana emergente de github para ingresar el username/email y password.

Ahora podemos empujar el código después de cambiar de usuario.

10
Amit K

Obtuve el mismo error al hacer un 'git pull' y así es como lo arreglé.

  1. Cambiar repo a HTTPS
  2. Ejecutar comando git config --system --unset credential.helper
  3. Ejecutar comando git config --system --add credential.helper manager
  4. Comando de prueba git pull
  5. Introduzca las credenciales en la ventana de inicio de sesión que aparece.
  6. Git pull completado con éxito.
7
Amer Bashoeb

Elimine esta línea de su archivo .gitconfig ubicado en la carpeta de usuario que tiene la sesión iniciada actualmente en Windows:

[credential]
helper = !\"C:/Program Files (x86)/GitExtensions/GitCredentialWinStore/git-credential-winstore.exe\"

Esto funcionó para mí y ahora, cuando empujo el control remoto, vuelve a solicitar mi contraseña.

7
Liviu M.

En el caso de Git Credential Manager para Windows se usa (lo que normalmente hacen las versiones actuales):

git credential-manager clear

Esto fue agregado a mediados de 2016 . Para verificar si se usa el administrador de credenciales:

git config --global credential.helper
→ manager
6
Simon A. Eugster

Puede eliminar la línea credential.helper=!github --credentials del siguiente archivo C:\Program Files\Git\mingw64\etc\gitconfig para eliminar las credenciales de git

6
Yoan Pumar
  1. Ir a C:\Users\<current-user>
  2. compruebe el archivo .git-credentials
  3. Eliminar contenido o modificar según su requisito
  4. Reinicia tu terminal
5
Dinesh Patil

En mi caso, no pude encontrar las credenciales guardadas en el Administrador de credenciales de Windows (Windows 7).

Pude restablecer mis credenciales ejecutando

git config --global credential.helper wincred

Honestamente, fue un saludo Mary para ver si borraría mis credenciales y realmente funcionó.

5
jlafay

Este error aparece cuando está utilizando varias cuentas Git en la misma máquina.

Si está utilizando macOS, puede eliminar las credenciales guardadas de github.com .

Siga los pasos a continuación para eliminar github.com credenciales.

  1. Abrir Acceso a llavero
  2. Encuentra github
  3. Seleccione el github.com y haga clic derecho sobre él
  4. Eliminar "github.com"
  5. Vuelva a intentar presionar Push o Pull to git y le pedirá las credenciales.
  6. Introduzca las credenciales válidas para la cuenta de repositorio.
  7. Hecho

     enter image description here

4
Pratik Patel

Tienes que actualizarlo en tu Credential Manager.

Vaya a Panel de control> Cuentas de usuario> Administrador de credenciales> Credenciales de Windows. Verá las credenciales de Git en la lista (por ejemplo, git: https: //). Haga clic en él, actualice la contraseña y ejecute el comando git pull/Push desde su Git bash y no se lanzarán más mensajes de error.

4
ChiragBhalgami

Usando la última versión de git para Windows en Windows 10 Professional y tuve un problema similar, tengo dos cuentas de GitHub diferentes y también una cuenta de Bitbucket, así que las cosas se pusieron un poco confusas para VS2017, las extensiones de git y git bash.

Primero verifiqué cómo git manejaba mis credenciales con este comando (ejecuta git bash con comandos elevados o obtienes errores):

git config --list

Encontré la entrada del Administrador de credenciales, por lo que hice clic en el botón INICIAR> escribí el Administrador de credenciales y, a continuación, hice clic con el botón izquierdo en el icono de seguridad del administrador de credenciales que lanzó la aplicación. Luego hice clic en las pestañas de Credenciales de Windows y encontré la entrada de mi cuenta de git actual que resultó ser Bitbucket, así que eliminé esta cuenta.

Pero esto no sirvió de nada, por lo que el siguiente paso fue eliminar las credenciales y lo hice desde el directorio del repositorio en mi computadora portátil que contiene el proyecto GitHub que estoy tratando de enviar al control remoto. Escribí el siguiente comando:

git config --system --unset credential.helper

Luego hice un git Push y me pidieron un nombre de usuario de GitHub que ingresé (el correcto que necesitaba) y luego la contraseña asociada y todo se insertó correctamente.

No estoy seguro de la cantidad de problemas que está ocurriendo, la mayoría de las personas probablemente trabajan fuera de un solo repositorio, pero tengo que trabajar en varios y usar diferentes proveedores, por lo que puedo encontrar este problema nuevamente.

2
Tahir Khalid

En nuestro caso, borrar la contraseña en el archivo .git-credentials del usuario funcionó para nosotros.

c:\users\[username]\.git-credentials
0
Fares

Lo que finalmente me solucionó esto fue utilizar el escritorio de GitHub, ir a la configuración del repositorio y eliminar el usuario: pass @ de la URL del repositorio. Luego, intenté un Empuje desde la línea de comandos y se me solicitaron las credenciales de inicio de sesión. Después de ponerlos en todo todo volvió a la normalidad. Tanto Visual Studio como la línea de comandos funcionan y, por supuesto, el escritorio de GitHub.

GitHub Desktop-> Repositorio-> Configuración del repositorio-> pestaña Remoto

Cambiar el repositorio remoto principal (origen) desde:

https: //[email protected]@github.com/MyProject/MyProject.git

A:

https://github.com/MyProject/MyProject.git

Clic en Guardar"

Se borrarán las credenciales.

0
Nick Pirocanac

En Windows, al menos, git remote show [remote-name] funcionará, por ejemplo.

git remote show Origin
0
Jason S

Como lo mencionó todo el mundo anteriormente, este es un problema de Git Credential Manager. Debido a los permisos, no pude modificar mis credenciales ni manipular el administrador de credenciales. Tampoco podía permitirme sentar la contraseña en texto plano en la PC. Una solución fue eliminar la rama remota en intellij y volver a agregar la rama remota. Esto elimina la credencial almacenada y obliga a actualizar la credencial.

 enter image description here

0
Akin Okegbile

Intenta esto cuando nada como se mencionó anteriormente está funcionando para ti.

git config credential.helper 'cache --timeout=30'

esto eliminará la memoria caché cada 3 segundos y solicitará un nombre de usuario y contraseña. Puede volver a ejecutar el comando con un aumento de los valores de tiempo de espera.

0
manish kumar

Construyendo a partir de la respuesta altamente votada de @ patthoyts ( https://stackoverflow.com/a/15382950/4401322 ):

Su respuesta utiliza pero no explica las configuraciones "local" frente a "global" frente a "sistema". La documentación oficial de git para ellos es aquí y vale la pena leerla.

Por ejemplo, estoy en Linux, y no uso un system config, así que nunca uso un indicador --system, pero comúnmente necesito diferenciar entre --local y --global configs.

Mi caso de uso es que tengo dos crendenciales Github; Una para el trabajo, y otra para el juego.

Así es como yo manejaría el problema:

$ cd work
# do and commit work
$ git Push Origin develop
# Possibly prompted for credentials if I haven't configured my remotes to automate that. 
# We're assuming that now I've stored my "work" credentials with git's credential helper.

$ cd ~/play 
# do and commit play
$ git Push Origin develop                                                                   
remote: Permission to whilei/specs.git denied to whilei.                
fatal: unable to access 'https://github.com/workname/specs.git/': The requested URL returned error: 403

# So here's where it goes down:
$ git config --list | grep cred
credential.helper=store # One of these is for _local_
credential.helper=store # And one is for _global_

$ git config --global --unset credential.helper
$ git config --list | grep cred
credential.helper=store # My _local_ config still specifies 'store'
$ git config --unset credential.helper
$ git Push Origin develop
Username for 'https://github.com': whilei
Password for 'https://[email protected]':
Counting objects: 3, done.
Delta compression using up to 12 threads.
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 1.10 KiB | 1.10 MiB/s, done.
Total 3 (delta 1), reused 0 (delta 0)
remote: Resolving deltas: 100% (1/1), completed with 1 local object.
To https://github.com/whilei/specs.git
   b2ca528..f64f065  master -> master

# Now let's turn credential-helping back on:
$ git config --global credential.helper "store"
$ git config credential.helper "store"
$ git config --list | grep cred
credential.helper=store # Put it back the way it was.
credential.helper=store

También vale la pena señalar que hay formas de evitar este problema por completo, por ejemplo, puede usar ~/.ssh/config con las claves SSH asociadas para Github (una para el trabajo, una para el juego) y los hosts remotos con el nombre correspondiente para resolver la autentificación contextualizando también.

0
irbanana

Para borrar Git Credentials Managers para el caché de Windows:

rm $env:LOCALAPPDATA\GitCredentialManager\tenant.cache

o

rm %LOCALAPPDATA%\GitCredentialManager\tenant.cache
0
Chris F Carroll

Para usuarios de macOS:

Este error aparece cuando está utilizando varias cuentas Git en la misma máquina.

Siga los pasos a continuación para eliminar las credenciales de github.com.

  1. Ir al buscador
  2. Ir a Aplicaciones
  3. Ir a la carpeta Utilidades
  4. Acceso a llavero abierto
  5. Selecciona el github.com y haz clic derecho sobre él.

    Eliminar "github.com"

Vuelva a intentar presionar Push o Pull to git y le pedirá las credenciales. Introduzca las credenciales válidas para la cuenta de repositorio. Hecho

0
curiousneuron