533 votes

GitLab à distance : HTTP Basic : accès refusé et authentification fatale

Contrairement à ce poste Je suis sur macOS.

Le mot de passe est configuré dans GitLab. J'ai également créé une clé SSL après le projet a été réalisé sur GitLab.

Lorsque j'utilise un dossier existant pour un nouveau projet et que je suis les étapes ci-dessous, je suis invité à entrer mon nom d'utilisateur et mon mot de passe GitLab.

Dossier existant

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

Après avoir saisi le mot de passe, j'obtiens l'erreur suivante.

à distance : HTTP Basic : Accès refusé fatal : Echec de l'authentification pour 'https://gitlab.com/myname/myproject'.

0 votes

Les réponses suivantes n'ont pas fonctionné pour moi... Si quelqu'un est toujours confronté à ce problème sur Mac... ce lien peut aider.... stackoverflow.com/questions/17659206/

0 votes

Cette erreur peut également se produire si la date d'expiration du mot de passe de votre compte GitLab est définie mais que vous utilisez une autre méthode d'authentification, par exemple LDAP. Dans ce cas, GitLab envoie l'erreur 403 sans même vérifier vos informations d'identification auprès du serveur LDAP.

941voto

mpro Points 747

Cela se produit chaque fois que je suis obligé de changer le mot de passe de Windows et aucune des réponses ci-dessus ne m'a aidé.

Essayez la solution ci-dessous qui fonctionne pour moi :

  1. Aller à Windows Gestionnaire d'accréditation . Dans un Windows EN-US, il suffit d'appuyer sur la touche Windows et de taper "credential". Dans d'autres Dans d'autres variantes localisées de Windows, vous devez utiliser le terme localisé. commentaires pour quelques exemples).

    ou encore vous pouvez utiliser le raccourci control /name Microsoft.CredentialManager dans la boîte de dialogue d'exécution (WIN+R)

  2. Modifiez l'entrée git sous Windows Credentials, en remplaçant l'ancien fichier mot de passe avec le nouveau.

12 votes

Merci, cela a également fonctionné pour moi et a résolu le problème. Vous devez utiliser cette solution si vous avez différents comptes Github sur votre appareil.

8 votes

Cela a fonctionné pour moi aussi, bien que j'utilise plusieurs comptes gilab. J'ai donc mis à jour tous mes comptes gitlab avec le même mot de passe que celui que j'ai dans mon Credential Manger et le problème est résolu.

0 votes

Cette solution semble beaucoup plus propre sous Windows et a parfaitement fonctionné pour moi après avoir mis à jour le mot de passe de mon réseau de domaine.

425voto

JavAlex Points 560

Pour moi, la méthode suivante a fonctionné :

N'utilisez pas votre mot de passe GitLab, mais créez un jeton d'accès et utilisez-le à la place de votre mot de passe :

  1. Dans GitLab, en haut à droite, allez dans Paramètres du profil personnel Jetons d'accès. Step 1

  2. Créez un nouveau jeton d'accès personnel (vérifiez l'onglet api option) Step 2

  3. git clone ...

  4. Lorsque l'on vous demande votre mot de passe, copiez et collez le jeton d'accès au lieu de votre GitLab mot de passe

    Step 3

8 votes

Le meilleur. Il m'a sauvé aujourd'hui.

0 votes

De toutes les solutions proposées ici, seule celle-ci a fonctionné pour moi !

4 votes

Sinon, sous Windows, remplacez le mot de passe dans le Gestionnaire de justificatifs Windows par le jeton.

314voto

hatanooh Points 1249

Vous pouvez essayer la commande suivante :

git config --system --unset credential.helper

Ensuite, saisissez un nouveau mot de passe pour le serveur distant Git.

36 votes

Notez que sous Windows, vous devez l'exécuter en tant qu'administrateur, sinon vous obtiendrez des erreurs d'autorisation.

12 votes

Cela dépend de l'endroit où vous mettez vos références. Si la commande précédente ne fonctionne pas, essayez également d'utiliser le drapeau global : git config --global--unset credential.helper

1 votes

Il s'agit de la réponse la plus pertinente pour l'OP, car elle aborde le problème et ne prend pas la tangente "sur Windows". Par ailleurs, il se peut que vous deviez exécuter cette commande en tant que sudo si votre utilisateur n'a pas accès à /etc

134voto

Bharti Ladumor Points 716

J'ai eu la même erreur et je l'ai résolue en :

  1. Appliquer la commande depuis cmd (exécuter en tant qu'administrateur)

    git config --system --unset credential.helper

  2. Et puis j'ai enlevé gitconfig fichier de C:\Program Fichiers \Git\mingw64 /etc/ emplacement (Note : ce chemin sera différent dans MAC comme "/Users/username")

  3. Après cela, utilisez la commande git comme git pull o git push Il m'a demandé le nom d'utilisateur et le mot de passe. J'ai appliqué un nom d'utilisateur et un mot de passe valides et la commande git fonctionne.

J'espère que cela vous aidera...

16 votes

Si vous obtenez cette erreur, vous pouvez simplement exécuter votre invite de commande en tant qu'administrateur, et l'erreur disparaît.

0 votes

Pour info : la réinitialisation de la configuration (votre première commande) a fonctionné. J'ai ensuite fait mon git push et blammo ! Je pense que c'est parce que mon magasin exige des changements de mot de passe mensuels et que le laboratoire git interne est détraqué.

4 votes

Essayez aussi de cette façon avec --global git config --global --unset credential.helper

80voto

Paulo Morgado Points 1015

La seule chose qui a fonctionné pour moi était d'utiliser https://username:Password@gitlab.com/user/projectgit au lieu de https://gitlab.com/user/projectgit . Voir https://gitlab.com/gitlab-com/support-forum/issues/1654

1 votes

Excellente réponse, cela fonctionne bien pour moi car mon git était privé, merci.

0 votes

Merci. Bien que je doive le remplacer par l'url du repo SSL, votre réponse m'a permis de m'en sortir. Je l'ai upvoted.

0 votes

Merci. Je n'ai pas rencontré ce problème en utilisant BitBucket ou Github. Avec GitLab, je dois créer un jeton d'accès personnel, puis l'utiliser dans l'origine distante. git remote set-url origin https://usernameHere:personalAccessTokenHere@gitlab.com/user‌​nameHere/projectName‌​Here

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X