Erreur Git fatale: échec de l'authentification

103

J'essaie d'utiliser git pour pousser mon référentiel vers un projet de services d'équipe Visual Studio, mais j'obtiens l'erreur:

fatal: Authentication failed for (url of team project

J'utilise les cmds:

git remote add origin
     https://XXXXXXX.visualstudio.com/DefaultCollection/_git/project

git push -u origin -–all

Une idée du correctif pour cela?

Merci!

GurdeepS
la source
1
Comment vous authentifiez-vous? Jeton d'accès personnel? Autres informations d'identification d'accès?
Daniel Mann

Réponses:

196

J'ai eu le même problème récemment (Visual Studio 2017 & Windows 10) et je l'ai résolu en utilisant la méthode suivante:

Panneau de configuration -> Credential Manager -> Gérer les informations d'identification Windows -> Choisissez l'entrée du référentiel git et modifiez l'utilisateur et le mot de passe.

Terminé.

kxiaocai
la source
1
J'ai utilisé cette méthode lorsque mon jeton d'accès personnel a expiré. Accédez à <<URL>> / _ usersSettings / tokens pour en créer un nouveau, puis définissez-le comme mot de passe dans Credential Manager.
Even Mien
34

Si vous souhaitez utiliser GIT CLI et ne pas interagir avec la compilation dans les wrappers GIT dans Visual Studio, vous devez activer les informations d'authentification alternatives

Comment?

Open your account (VS Online account) 
-> click on your name on the top right 
-> My Profile
-> Credentials.

et installez-le.


entrez la description de l'image ici

entrez la description de l'image ici

CodeWizard
la source
4
La sécurité est désormais un élément distinct du menu. Si vous cliquez sur profil, vous accédez à une page très différente.
Lukos
2
cela peut varier d'une version à l'autre. c'est pourquoi j'ai ajouté une capture d'écran
CodeWizard
1
Je n'ai pas eu à faire ça. L'utilisation d'un PAT pour Git Bash semble fonctionner très bien.
Josh Gust
1
Veuillez utiliser un PAT au lieu d'autres informations d'identification.
Edward Thomson
1
L'activation d'autres informations d'identification n'est pas recommandée: les informations d'identification de domaine transitent en texte clair et peuvent se retrouver dans les journaux IIS de niveau d'application
Giulio Vian
28

J'ai été confronté au même problème. La fenêtre de sortie d'erreur ressemble à ceci: authentification échouée Image

Suivre les étapes a résolu le problème:

  1. Accédez au Panneau de configuration -> Credential Manager -> Informations d'identification Windows
  2. Sous Credential générique, choisissez une entrée du mot de passe git & update.

    fenêtre de solution

  3. Le mot de passe doit être identique au mot de passe de connexion Windows (système).

Anusha M Shetty
la source
17

La meilleure option aujourd'hui est d'installer https://github.com/Microsoft/Git-Credential-Manager-for-Windows qui prend en charge VSO, GitHub et s'améliore chaque mois.

Giulio Vian
la source
2
@dotnetdev Veuillez accepter cette réponse car c'est une méthode recommandée pour résoudre le problème.
Deilan
1
Ceci est également disponible pour Mac et Linux sur github.com/Microsoft/Git-Credential-Manager-for-Mac-and-Linux - a parfaitement fonctionné pour moi sans avoir à ajouter des «informations d'identification alternatives» moins sécurisées.
Breeno
1
C'est en effet la solution «de facto» fournie par Microsoft. D'autres solutions qui fonctionnent effectivement ici doivent être considérées comme des ajustements.
Stephane
11

Avec VSTS, l'URL est, lorsque vous copiez l'url de clone git à partir de vst

https: // orgname @ dev.azure.com / org / project / _git / repo

Remplacez orgname @ par votre nom d'utilisateur alternatif que vous auriez créé dans VSTS -> profil -> Sécurité.

URL finale de git -

https: // nom_ alternatif @ dev.azure.com / org / project / _git / repo

Max
la source
7

J'ai eu le même problème, j'ai essayé de mettre à jour mon mot de passe à l'aide du gestionnaire d'informations d'identification Windows, cela n'a toujours pas résolu le problème

Panneau de configuration -> Credential Manager -> Gérer les informations d'identification Windows -> Choisissez l'entrée du référentiel git et modifiez l'utilisateur et le mot de passe.

J'ai ensuite supprimé toutes les entrées liées à git dans le gestionnaire d'informations d'identification, puis j'ai essayé d'utiliser Git à l'aide de Visual Studio, cette fois-ci, cela m'a demandé de nouvelles informations d'identification

Développeur d'applications Web
la source
5

Supprimez «.git / config» et réessayez. Attention, cela peut également réinitialiser certains paramètres de git!

J'ai essayé des informations d'identification alternatives et un jeton d'accès personnel à plusieurs reprises avec les bonnes informations d'identification et cela me disait "fatal: l'authentification a échoué".

Enfin, j'ai trouvé qu'il y a un fichier nommé ".git / config" situé à la racine de mon Repo. J'ai supprimé ce fichier et tapez à nouveau mes informations d'identification, cela a fonctionné.

Longfei Wu
la source
3

J'ai soudainement commencé à recevoir cette erreur en essayant de pousser les modifications de VS2017 vers un référentiel VSTS Git. Cette fonctionnalité avait fonctionné la veille.

J'ai vérifié mon fichier git.log et j'ai vu une exception différente: -

19: 43: 57.116665 ... zureAuthority.cs: 184 trace: Le serveur [ValidateCredentials] a renvoyé: 'Impossible de se connecter au serveur distant.

J'ai téléchargé la dernière source Git CredentialManager à partir du repo Gits Credential Manager et je l'ai déboguée.

Une fois authentifié, l'exception suivante s'est produite: -

Aucune connexion n'a pu être établie car la machine cible l'a activement refusée 127.0.0.1:8888

J'ai alors réalisé que j'avais récemment configuré Fiddler pour qu'il agisse en tant que proxy pour tous les services, conformément à l'article capturing-traffic-from-.net-services-with-fiddler

Une fois que j'ai exécuté Fiddler, j'ai pu me connecter avec succès.

Monsieur Slim
la source
3

Ma solution était un peu différente et plus rapide :)

  1. Accédez aux informations d'identification Windows (Démarrer-> Informations d'identification Windows) et supprimez les informations d'identification de votre référentiel (elles commencent par git: xxx)
  2. Accédez à VSCode et dans le terminal, écrivez:

    config credential.helper wincred

  3. Accédez à Visual Studio (pas de VSCode) et effectuez un pull git. Une fenêtre contextuelle affichera la demande d'informations d'identification. Mettez vos informations d'identification pour le repo

  4. Accédez à VSCode et faites un pull git. Les identifiants ont été automatiquement récupérés dans la boutique wincred

Les informations d'identification sont automatiquement créées et stockées dans wincredentials, de sorte que la prochaine fois, vous ne pourrez pas être invité à fournir des informations d'identification. (également un jeton d'accès personnel sera fourni à partir de visualstudio.com si vous utilisez le dépôt git hébergé par DevOps).

Antonio Buonaiuto
la source
Démarrer-> Windows Credentials fonctionne comme un charme! Merci!
Highriser
2

Pour les utilisateurs Linux qui ne peuvent pas utiliser Microsoft Credential Manager. C'est la seule solution que j'ai trouvée en dehors de l'utilisation de ssh. Vous devez générer les informations d'identification dans la vue du référentiel (voir les images ci-dessous) obtenir les identifiants git

Et le résultat est: obtenir le résultat des informations d'identification Git

Copiez le mot de passe !. Azure devops ne le stocke pas et vous ne pourrez plus le voir!

NB: à partir de 2020, les autres informations d'identification ont été désactivées, consultez le blog Microsoft

Melchia
la source
1

J'ai essayé beaucoup d'options, mais celle qui a fonctionné pour moi était de:

  1. Téléchargez le gestionnaire de mots de passe Git à partir de sa section Versions

  2. Essayez de faire simple git fetchqui amènera automatiquement la fenêtre (alternative à la fenêtre par défaut par exemple) et demandez à entrer le nom d'utilisateur et le mot de passe mais avec une manière plus élégante que celle standard.

Après avoir entré correctement les informations d'identification, cela a fonctionné, même si j'obtenais une erreur avant.

PS Si vous obtenez des erreurs de type "Mauvaises informations d'identification", vérifiez toujours si le nom d'utilisateur et le mot de passe du référentiel sont corrects. Si vous hésitez, réinitialisez simplement le mot de passe et essayez d'utiliser le même dans la fenêtre du gestionnaire de mots de passe Git.

Arsen Khachaturyan
la source
1

J'ai eu ce problème et les instructions d'un technicien de Microsoft l'ont corrigé pour moi:

  • Fermez toutes les instances de Visual Studio.
  • Ouvrez le Gestionnaire des tâches et vérifiez si des services TFS sont en cours d'exécution. Sélectionnez chacun d'eux et cliquez sur Terminer l'arborescence du processus.
  • Accédez au dossier ci-dessous et supprimez tout le contenu et les dossiers dans% LocalAppData% \ Microsoft \ Team Foundation {version} \ Cache
  • Accédez à Panneau de configuration -> Comptes d'utilisateurs -> Gérer vos informations d'identification -> Informations d'identification Windows, sélectionnez l'URL VSTS pour la supprimer
  • Ensuite, allez dans "C: \ Users \ USER NAME \ AppData \ Local \ GitCredentialManager \ tenant.cache" et supprimez-le
  • Accédez également à "C: \ Users \ USER NAME \ AppData \ Local.IdentityService" et supprimez-le
Casey
la source
0

Tout ce dont j'avais besoin était les informations d'identification correctes. lors du déploiement sur une application Web, je devais accéder au centre de déploiement, informations d'identification de déploiement. Et puis utilisez les informations d'identification de l'application ou créez les informations d'identification de l'utilisateur. Après cela, supprimez les informations d'identification mises en cache sur la machine locale (Windows: Panneau de configuration \ Comptes d'utilisateurs \ Credential Manager). exécutez à nouveau "git push webapp master: master", entrez l'une des informations d'identification de déploiement. Cela a fonctionné pour moi.

mahesh
la source
0

Dans le cas où vous êtes sur autre chose que Windows et que votre patron vous oblige à utiliser azure devops, et que vous ne voulez pas utiliser SSH et que vous souhaitez utiliser à l'ancienne, procédez comme suit.

Vous devez activer les `` informations d'identification alternatives '' (je sais que c'est ennuyeux) ou vous devez créer un jeton d'accès. La création d'un jeton d'accès dans ce cas ressemble plus à un mot de passe aléatoire temporaire. Si vous utilisez les outils Windows, c'est fait pour vous.

Quoi qu'il en soit, accédez au Securitymenu contextuel du profil dans le coin supérieur droit.

Les paramètres de sécurité

Ensuite, si votre patron / manager / mec qui a les droits d'administrateur vous préfère, les `` informations d'identification alternatives '' sont activées. Sinon, acceptez votre destin et générez un «jeton d'accès personnel».

Les paramètres de sécurité

botenvouwer
la source
0

2 à 5 minutes pour la configuration!

  • Créez vos clés SSH (~ / .ssh /)

ssh-keygen -C "[email protected]"

  • Ajouter la clé publique à Azure DevOps Services / TFS
  • Cloner le référentiel Git avec SSH

La source

jnermano
la source
0

Après avoir lutté avec le serveur d'authentification git et DevOps d' azur et d' essayer d' autres réponses cette astuce ici a fonctionné pour moi.

Vous utilisez Visual Studio? Team Explorer gère l'authentification avec Azure Repos pour vous.

Une fois que je me suis connecté au référentiel à l'aide de Team Explorer, je pouvais utiliser la ligne de commande pour exécuter des commandes git.

VahidNaderi
la source
0

Accédez à Windows Credentials Manager et mettez à jour les informations d'identification pour GIT.

Avinash Prabhakar
la source