web-dev-qa-db-fra.com

L'authentification GitHub échouant sur https, renvoyant une adresse email incorrecte

L'initiation d'une action Push ou de toute autre action avec GitHub à partir de la ligne de commande (via https, pas ssh) qui appelle le nom d'utilisateur et le mot de passe échoue non seulement mais, le cas échéant, elle renvoie

Username for 'https://github.com': username
Password for 'https://[email protected]': 
remote: Invalid username or password.
fatal: Authentication failed for 'https://github.com/username/repository.git/'

Je n'ai pas d'adresse @github.com. Le mot de passe et le nom d'utilisateur sont corrects.

Je sais que je pourrais passer à SSH et utiliser des clés, mais cela ne dit pas pourquoi l’authentification échoue avec https.

118
ele

Le soutien de GitHub a immédiatement déterminé la source du problème: l'autorisation à deux facteurs.

Pour utiliser GitHub sur le shell avec https, créez un jeton OAuth . Comme le note la page, j'ai dû retirer mes identifiants de nom d'utilisateur et de mot de passe du trousseau, mais avec osx-keychain en place, le jeton est stocké en tant que mot de passe et les choses fonctionnent exactement comme sur https sans autorisation à deux facteurs. .

161
ele

Je n'ai pas d'adresse @github.com

Vous n'avez pas à: le @ est le séparateur entre le nom d'utilisateur: mot de passe et le domaine.
Ce n'est pas une adresse email.

Une URL complète GitHub https serait:

https://username:[email protected]/username/reponame.git

Sans le mot de passe (qui serait ensuite demandé sur la ligne de commande), cela donnerait:

https://[email protected]/username/reponame.git

Mais encore une fois, [email protected] n'est pas une adresse électronique, mais seulement la première partie des informations d'identification.

Assurez-vous que le cas de votre username et reponame est correct: il est sensible à la casse .

Notez que vous pouvez stocker et chiffrer vos informations d'identification dans un .netrc.gpg (ou _netrc.gpg sur Windows) si vous ne souhaitez pas mettre ces informations en clair dans l'URL.
Voir " Y a-t-il un moyen d'éviter de taper le mot de passe lors de l'utilisation de https://github ".

22
VonC
  • Aller à Credential Manager => Gestionnaire Windows
  • Supprimer tout ce qui concerne tfs
  • Maintenant, cliquez sur Ajoutez un identifiant générique et indiquez les valeurs suivantes

    (1) adresse Internet ou réseau: git: https: //tfs.donamain nom (2) nom d'utilisateur: votre nom d'utilisateur (3) mot de passe: votre mot de passe

    cela devrait le réparer

17
Oyebisi Jemil

Cela peut arriver sous Windows si vous avez déjà stocké des informations d'identification différentes. Accédez à Credential Manager et supprimez les informations d'identification github stockées.

9
Random

[Mac seulement]

Si vous devez supprimer votre authentification, utilisez

git credential-osxkeychain erase
Host=github.com
protocol=https

sur Mac.

Voir https://help.github.com/articles/updating-credentials-from-the-osx-keychain/

8
Dan Rosenstark

C’est juste que cela aide tout le monde aussi, j’ai été connecté à l’application Mac, la ligne de commande fonctionne bien, mais comme j’ai allumé 2FA, mes commandes renvoyaient l’erreur. Je devais me déconnecter de l'application pour utiliser mon jeton d'accès personnel dans mes commandes, conformément à la réponse de ele ici .

Espérons que cela aide quelqu'un!

5
Joel Balmer

La même chose s’est produite avec moi, lorsque j’ai activé l’authentification bidirectionnelle pour github. Les choses que j'ai faites pour résoudre:

  • Obtenez votre jeton d'accès personnel. Ceci vous devez vérifier et générer si non disponible déjà. Lien pour ceci: https://github.com/settings/tokens
  • Allez dans votre répertoire local et supprimez le dossier, puis re-clonez la branche de github.
  • Maintenant, essayez la commande que vous essayiez précédemment i.e: git pull Origin Master
  • Entrez le nom d'utilisateur et le mot de passe, collez le jeton généré et n'oubliez pas de sauvegarder ce jeton quelque part afin de pouvoir le réutiliser si nécessaire.

Cela résoudra votre problème.

4
palak