Control remoto de GitLab: HTTP básico: acceso denegado y autenticación fatal

269

Estoy en Mac OS a diferencia de esta publicación:

Tengo la contraseña configurada en GitLab.

Tengo la clave SSL creada DESPUÉS de que el proyecto se realizó en GitLab.

Cuando uso una carpeta existente para un nuevo proyecto y sigo los pasos a continuación:

Carpeta existente

cd existing_folder
git init
git remote add origin https://gitlab.com/sobopla/Geronimod.git
git add .
git commit -m "Initial commit"
git push -u origin master

Se me solicita que ingrese mi nombre de usuario y contraseña de GitLab. Después de ingresar la contraseña, obtengo:

remoto: HTTP básico: acceso denegado fatal: autenticación fallida para ' https://gitlab.com/myname/myproject '

jeancode
fuente
Las siguientes respuestas no funcionaron para mí ... Si aún alguien enfrenta este problema en Mac ... este enlace podría ayudar ... stackoverflow.com/questions/17659206/…
PALLAMOLLA SAI

Respuestas:

537

Sucede cada vez que me veo obligado a cambiar la contraseña de Windows y ninguna de las respuestas anteriores me ayudó.

Prueba la siguiente solución que funciona para mí:

  1. Vaya al Administrador de credenciales de Windows . Esto se hace en un EN-US Windows presionando la tecla de Windows y escribiendo 'credencial'. En otras variantes de Windows localizadas, debe usar el término localizado (consulte los comentarios para ver algunos ejemplos).

    alternativamente , puede usar el acceso directo control /name Microsoft.CredentialManageren el cuadro de diálogo de ejecución (WIN + R)

  2. Edite la entrada git en Windows Credentials, reemplazando la contraseña anterior por la nueva.
mpro
fuente
3
Gracias, eso también funcionó para mí y resolvió el problema. Necesita esta solución si tiene diferentes cuentas de Github en su dispositivo
Dany Wehbe
44
También funcionó para mí, aunque estoy usando múltiples cuentas de gilab, así que lo que hice actualicé toda mi cuenta de gitlab con la misma contraseña que tengo en mi Credential Manager y el problema está resuelto Gracias @ mpro
Rajan Chauhan
66
Nota: escríbalo en su sistema de idiomas. Rus: "Credential Manager" = "Диспетчер Учетных Данных"
Dyno Cris
2
Gran respuesta. Este es especialmente un caso con sus cuentas de trabajo donde tiene que cambiar sus contraseñas de vez en cuando.
geekidharsh
44
En alemán es "Anmeldeinformationsverwaltung" y luego "Windows-Anmeldeinformationen".
nachtigall
169
   git config --system --unset credential.helper

luego ingrese una nueva contraseña para el servidor remoto Git.

hatanooh
fuente
22
Tenga en cuenta que en Windows debe ejecutarlo como Administrador, de lo contrario obtendrá errores de permiso
Eternal21
66
Depende de dónde coloque sus credenciales. Si el comando anterior no funciona, intente también usar la bandera global:git config --global--unset credential.helper
Vincent Lunat
Esta es la respuesta más relevante para el OP, ya que aborda el problema y no entra en alguna tangente "en Windows". Además, como nota al margen, es posible que deba ejecutar este comando como sudosi su usuario no tuviera acceso a/etc
Ghostrydr
git config --sistema credential.helper manager, para usar credential.helper nuevamente.
hatanooh
Si desarma la ayuda de credenciales, deberá proporcionar el nombre de usuario y la contraseña cada vez que se conecte al repositorio GIT. Para solucionarlo, puede configurar Helper nuevamente utilizando el siguiente comando: git config --global credential.helper store
Tomasz Czechowski
86

Obtuve el mismo error y lo resolví:

  1. Aplicar comando desde cmd (ejecutar como administrador)

    git config --system --unset credential.helper

  2. Y luego eliminé el archivo gitconfig de C: \ Archivos de programa \ Git \ mingw64 / etc / location (Nota: esta ruta será diferente en MAC como "/ Usuarios / nombre de usuario")

  3. Después de eso, use el comando git como git pullogit push , me pidió nombre de usuario y contraseña. aplicando nombre de usuario y contraseña válidos y el comando git funcionando.

Espero que esto te ayudará...

Bharti Ladumor
fuente
11
Si obtiene ese error, puede ejecutar su símbolo del sistema como Administrador y el error desaparecerá.
Eternal21
FYI: Simplemente restablecer la configuración (su primer cmd) funcionó. ¡Entonces hice mi git push y blammo! Creo que es porque mi tienda requiere cambios mensuales de contraseña, por lo que el laboratorio interno de git se vuelve loco.
yardpenalty.com
1
también inténtalo de esta manera con --global git config --global --unset credential.helper
Mike
Esto lo resolvió para mí en una Mac
Aditya Vikas Devarapalli
57

Para mí, lo siguiente funcionó:

No use su contraseña de GitLab, pero cree un token de acceso y úselo en lugar de su contraseña:

  1. En GitLab, vaya a Configuración > Tokens de acceso
  2. Crear un nuevo token (ver api )
  3. git clone ...
  4. Cuando se le solicite su contraseña, copie y pegue el token de acceso en lugar de su contraseña de GitLab
JavAlex
fuente
44
¡Me funcionó a mi también!
Christian Ray Leovido
42

Lo único que funcionó para mí fue usar en https://username:[email protected]/user/projectgitlugar de https://gitlab.com/user/projectgit. Ver https://gitlab.com/gitlab-com/support-forum/issues/1654

Paulo Morgado
fuente
1
Gran respuesta, funciona bien para mí porque mi git era privado, gracias
Mohammad H.
Gracias. Aunque para mí tengo que reemplazarlo con URL de repositorio SSL, pero su respuesta me ayuda. Lo he votado.
Muzzamil
Gracias. No tuve ese problema al usar BitBucket o Github. Con GitLab tengo que crear un token de acceso personal, luego usarlo en origen remotogit remote set-url origin https://usernameHere:[email protected]/usernameHere/projectNameHere
Woppi
38

Vaya al Administrador de credenciales de Windows (presione la tecla de Windows y escriba 'credencial') para editar la entrada git en Credenciales de Windows. Reemplace la contraseña anterior por la nueva.

Administrador de credenciales de Windows

Andy Quiroz
fuente
OP está en macOS, no en Windows.
Matthieu Brucher
Esto no ayudaría a OP, pero funcionó de maravilla en mi cuadro de desarrollo de Windows.
Tony
gracias, funcionó bien
Sirwan Rahimi hace
28

También estaba enfrentando el mismo problema. La razón del problema fue un error de autenticación. Para resolver este problema, vaya al Panel de control -> Administrador de credenciales -> Credenciales genéricas aquí encuentre su credencial de gitlab y edítelas. Asegúrese de que su contraseña de identificación sea correcta o no

ingrese la descripción de la imagen aquí

Kshama Jain
fuente
Esto funcionó, en mi caso fue porque la compañía nos obliga a cambiar la contraseña del dominio cada pocos meses. Este cambio no actualizó las credenciales en este administrador de credenciales. Tan pronto como actualicé la contraseña, estaba funcionando.
k4yaman
21

Si está usando git> 2.11 y está usando Kerberos para interactuar con Gitlab, necesita establecer esta configuración en su git local para evitar el remote: HTTP Basic: Access deniederror.

$ git config --global http.emptyAuth true

Fuente

Pigueiras
fuente
Caso interesante, con Kerberos. +1
VonC
1
No estoy usando Kerberos pero gracias por su respuesta.
jeancode
Kerberosno son necesarios ¡Gracias! git-scm.com/docs/git-config
contributorpw
Después de hacer una instalación limpia de Git en Windows esta mañana. Esta respuesta resolvió Error de acceso denegado para mí.
James
Santa vaca: revisé todas las otras sugerencias y finalmente FINALMENTE funcionó. De hecho estaba usando Kerberos!
Bon Crowder en MathFour
20

Simplemente agregue su nombre de usuario antes del dominio:

https://**username**@gitlab.com/user/projectgit

Y el asistente te pedirá la contraseña

gal007
fuente
13

Prueba esto:

  1. Ir: C:/Users/(YourUserName)/
  2. Borrar archivo .gitconfig
boy_vkallstar
fuente
12

Abra el símbolo del sistema como administrador y luego ejecute este comando:

git config --system --unset credential.helper
MARYLAND. Shafayatul Haque
fuente
no se pudo bloquear el archivo de configuración C: \ Archivos de programa \ Git \ mingw64 / etc / gitconfig: Permiso denegado
1
No utiliza el archivo de configuración, solo abra el símbolo del sistema como administrador y ejecute el comando. Espero que esto ayude
MD. Shafayatul Haque
12

Ocurre si cambia su nombre de usuario o contraseña de la cuenta de servicio git (GitHub o GitLab, Bitbacket, etc.). También debe cambiarlo en el Administrador de credenciales de Windows.

Por lo tanto, escriba " Credential Manager " (rus. "Диспетчер Учетных Данных") en el menú de búsqueda de Windows y vaya a su cuenta de servicio git y cambie los datos también.

ingrese la descripción de la imagen aquí

Dyno Cris
fuente
Aunque no cambié mi usuario o contraseña (es una credencial de AD), esto me sucedió debido a una reconstrucción del servidor Gitlab y la solución anterior solucionó este error.
Michael Hafner
11

Nota: no mezcle la configuración SSL de GitLab y las claves SSH de GitLab .

Si lo que ha configurado en su perfil de GitLab es una clave pública SSH, entonces su URL HTTPS no la usaría.

Con respecto a sus credenciales HTTPS, verifique dos veces:

  • si la autenticación de dos factores está deshabilitada, o
  • si tiene caracteres especiales en su nombre de usuario o contraseña, o
  • si usted tiene un ayudante de credenciales de Git: git config credential.helper.
VonC
fuente
1
- Tengo un espacio en mi nombre de usuario autenticado porque Gitlab través de Github - Autenticación de dos factores está desactivado - ¿Qué quiere decir "Si tengo un ayudante de credenciales de Git?
jeancode
@jeancode quiero decir: qué ves cuando escribes git config credential.helper: eso podría haber almacenado en caché las credenciales incorrectas.
VonC
@jeancode Para el espacio, ¿lo codificó por ciento? ( en.wikipedia.org/wiki/Percent-encoding#Character_data:% 20)
VonC
No le hice nada al espacio en el nombre, el espacio proviene de mi nombre en GitHub, que GitLab tomó durante el inicio de sesión de autenticación a través de Github.
jeancode
1
Recibía el error debido a que intentaba usar claves de implementación mientras la autenticación de dos factores estaba habilitada. Aparentemente, solo puede usar tokens de acceso personal si está habilitado el factor doble.
Joshua Dyck
9

Hay dos formas de solucionar este problema:

  1. Agregué mi nombre de usuario al frente de la URL remota ( https: // username @ gitRepoURL )

    • No siempre es la mejor solución; donde trabajo, a pesar de que estamos avanzando lentamente hacia el uso de GIT, tenemos nuestras aplicaciones en una unidad de red, por lo que si hago esto, solo puedo impulsar los cambios incluso si alguien más trabajó en una función.
  2. No puedo ejecutar git config --system --unset credential.helperdesde GIT Bash, así que tuve que abrir un símbolo del sistema de administración y ejecutarlo allí (esto supone que instaló GIT de modo que pueda ejecutarse tanto desde GIT Bash como desde el símbolo del sistema). De Bash, aparece el error "no se pudo bloquear el archivo de configuración".

Artorias2718
fuente
para más información, véase: git config -l. También intente arriba con en --globallugar de--system
Mike
9

Bueno, enfrenté el mismo problema cada vez que cambio mi contraseña de inicio de sesión.

A continuación se muestra el comando que necesito ejecutar para solucionar este problema:

git config --global credential.helper wincred

Después de ejecutar el comando anterior, me pregunta nuevamente mi nombre de usuario y contraseña actualizados .

Vikash Pandey
fuente
5

En mi caso, reinstalé la última versión de git (actualmente 2.16.2). No sé si era que mi versión anterior de git estaba desactualizada, pero leí en una página de github que esto debería hacerse si tropiezas con errores de clonación https. Pensé que era un error de clonación https, ya que el error se enfoca HTTP Basic, mientras que GitLab usa HTTPS. Podría estar equivocado en este proceso de pensamiento, pero la solución ayudó en mi caso, ¡y espero que esto ayude a cualquiera en el futuro!

Andreas Forslöw
fuente
4

VAYA A y C:\Users\<<USER>> AND DELETE THE .gitconfig fileluego intente un comando que se conecta a upstream like git clone, git pull or git push. Se le pedirá que vuelva a ingresar sus credenciales. Por favor hazlo.

Dennis Mutegi
fuente
4

Eliminé la credencial de gitlab del 'Administrador de credenciales' en Windows y presioné con éxito

saiedkia
fuente
4

Vaya a Panel de control-> Administrador de credenciales-> Credenciales de Windows, seleccione las credenciales de github o gitlab y modifíquelas. Esto es para windows10

SanjX
fuente
2

Si intenta iniciar sesión en Gitlab con su cuenta Git existente. Necesita restablecer su contraseña de Gitlab, por primera vez.

  1. Paso: navega hasta la configuración haciendo clic en el ícono de tu perfil (menú desplegable en la esquina superior derecha).
  2. Paso: ve a la configuración
  3. Paso: haga clic en el icono de candado o en el icono de glifo (es decir, contraseña).
  4. Paso: Ingrese la nueva contraseña para Gitlab.
Gani
fuente
2

Entonces, para mí, el problema era que había creado mi cuenta de GitLab al vincular mi cuenta de GitHub. Esto significaba que no existía una contraseña formal para la cuenta, ya que se creó a través de hotlink entre GitHub y GitLab. Lo arreglé yendo a Configuración de GitLab -> Contraseña -> y escribiendo la misma contraseña que tenía mi cuenta de GitHub.

Momchill
fuente
2

Ninguna de las soluciones anteriores funcionó para mí y no tengo derechos de administrador en mi computadora portátil , pero finalmente me llevaron al documento de almacenamiento de credenciales de herramientas git :

Mi configuración de Windows 10 | git versión 2.18.0.windows.1 | Clonar a través del enlace HTTPS

Esta solución funciona si usa wincred como ayudante de credenciales:

> git config --global credential.helper
wincred

Cambiar el ayudante a "caché" debería ser suficiente, ya que le pedirá que proporcione sus credenciales nuevamente. Para configurarlo en caché, simplemente escriba:

> git config --global credential.helper cache

Verifique que su actualización esté activa:

> git config --global credential.helper
cache

Ahora debería poder clonar / extraer / recuperar como antes.

lkostka
fuente
1

Intenté con la URL del navegador para el repositorio y luego

git clone $ (browserURL)

solicitó mi nombre de usuario y luego mi contraseña

Funcionó bien entonces

Saurabh Verma
fuente
1

Cuando el Administrador de credenciales de Windows le pide sus credenciales para acceder a GitLab, esos son el nombre de usuario y la contraseña que utiliza cuando accede a GitLab. EG: use su correo electrónico y contraseña.

aercolino
fuente
1

Cuando tuve el mismo problema,

Lo resolví eliminando el archivo "passwd" en

C:\Users\<USERNAME>\AppData\Local\Atlassian\SourceTree

Después de eliminar Sourcetree le pedirá la contraseña.

Note:
OS Version : win10 
Sourcetree Version:  3.1
Jean-Philippe Vankemmel
fuente
1

Creo que llego un poco tarde aquí. ¡Pero creo que esto ayudaría a los nuevos píos!

Mis errores fueron: remoto : HTTP básico: acceso denegado

remoto : debe usar un token de acceso personal con alcance 'read_repository' o 'write_repository' para Git sobre HTTP.

remoto : puede generar uno en https://gitlab.com/profile/personal_access_tokens

fatal : la autenticación falló para ' https://gitlab.com/PROFILE_NAME/REPO_NAME.git/ '

Estoy en Ubuntu pero esto funcionó para mí:

  1. Ir a https://gitlab.com/profile/personal_access_tokens
  2. Crea un nuevo token y marca el cheque para todos.
  3. Copia tu token
  4. Ahora ve a tu Terminal y pégalo así.

git clone https: // oauth2: [email protected]/PROFILE_NAME/REPO_NAME.git/

Gaurav
fuente
0

Para usuarios de Mac:

  1. Vaya a llavero y elimine cuentas de gitlab
  2. Vaya a la ruta de su proyecto en la terminal y simplemente escriba git pull
  3. Luego se le pedirá nombre de usuario y contraseña para gitlab
  4. Ingrese su nombre de usuario que encontrará en la cuenta de gitlab en la sección de perfil.
  5. Luego, después de eso, ingrese su contraseña actualizada aquí.
  6. Aquí vamos, nuevamente intente empujar su código, puede ayudarlos, muchachos.
vikash kumar
fuente