Je travaille avec plusieurs référentiels, mais dernièrement, je travaillais simplement dans notre référentiel interne et tout était super.
Aujourd'hui, j'ai dû valider et pousser du code dans un autre, mais j'ai des problèmes.
$ 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
Il n'y a rien que je puisse faire, cela ramènerait la saisie du mot de passe.
Comment puis-je réinitialiser les informations d'identification sur mon système afin que Git me demande le mot de passe de ce référentiel?
J'ai essayé:
git config --global --unset core.askpass
afin de supprimer le mot de passe
git config credential.helper 'cache --timeout=1'
afin d'éviter le cache des informations d'identification ...
Rien ne semble fonctionner; Quelqu'un a-t-il une meilleure idée?
windows
git
credentials
balexandre
la source
la source
~/.netrc
dossier?netrc
, qui stockerait plusieurs informations d'identification dans un fichier crypté . C'est mieux que d'entrer votre mot de passe à chaque fois pour chaque session, car le cache ne "cache" le mot de passe que pendant un certain temps. Voir un exemple complet ici .Réponses:
Si ce problème survient sur une machine Windows, procédez comme suit.
la source
credential.helper=manager
. Pour tester ce typegit config --list
. S'il est défini sur, lesstore
informations d'identification ne sont pas stockées dans le magasin d'informations d'identification mais sont stockées non chiffrées.git:https://github.com
et j'ai été invité à entrer mon nom d'utilisateur / passe la prochaine fois que je clonais un dépôt à l'aide de PyCharm. J'avais plus d'un compte github et le mauvais était mis en cache.Systemsteuerung\Alle Systemsteuerungselemente\Anmeldeinformationsverwaltung
.Credential Manager
. Cela a aussi fonctionné pour moi403
erreur via Bitbucket.Le cache d'informations d'identification Git exécute un processus démon qui met en cache vos informations d'identification en mémoire et les remet à la demande. Donc, tuer votre processus git-credential-cache - démon jette tout cela et entraîne une nouvelle demande de mot de passe si vous continuez à l'utiliser comme option cache.helper.
Vous pouvez également désactiver l'utilisation du cache des informations d'identification Git à l'aide de
git config --global --unset credential.helper
. Réinitialisez ensuite cela et vous continuerez à disposer des informations d'identification mises en cache pour les autres référentiels (le cas échéant). Vous devrez peut-être également le fairegit config --system --unset credential.helper
si cela a été défini dans le fichier de configuration système (par exemple, Git pour Windows 2).Sous Windows, il serait préférable d'utiliser l'aide du gestionnaire (
git config --global credential.helper manager
). Cela stocke vos informations d'identification dans le magasin d'informations d'identification Windows qui possède une interface du Panneau de configuration où vous pouvez supprimer ou modifier vos informations d'identification stockées. Avec cette boutique, vos informations sont sécurisées par votre connexion Windows et peuvent persister sur plusieurs sessions. L' assistant de gestionnaire inclus dans Git pour Windows 2.x a remplacé l' assistant de wincred précédent qui avait été ajouté dans Git pour Windows 1.8.1.1. Un assistant similaire appelé winstore est également disponible en ligne et a été utilisé avec GitExtensions car il offre une interface plus GUI. Le gestionnaire d' aide offre la même interface graphique que winstore .Extrait de la page de support de Windows 10 détaillant le gestionnaire d'informations d'identification Windows:
Et puis sélectionnez les informations d' identification Windows pour éditer (= supprimer ou modifier) les informations d'identification git stockées pour une URL donnée.
la source
Control Panel\User Accounts\Credential Manager
sous Windows 7Saisir à nouveau:
Ensuite, vous serez invité à saisir à nouveau vos informations d'identification.
ATTENTION
Source: https://git-scm.com/docs/git-credential-store
la source
.git/config
.J'ai été confronté au même problème que le PO. Il prenait mes anciennes informations d'identification Git stockées quelque part sur le système et je voulais utiliser Git avec mes nouvelles informations d'identification, j'ai donc exécuté la commande
Cela montrait
Chaque fois que je jouais,
git push
il prenait mon ancien nom d'utilisateur que j'avais défini depuis longtemps, et je voulais utiliser un nouveau compte GitHub pour pousser les changements. J'ai découvert plus tard que mes anciennes informations d'identification de compte GitHub étaient stockées sous Panneau de configuration → Comptes d'utilisateurs → Gestionnaire d'informations d'identification → Gérer les informations d'identification Windows .Je viens de supprimer ces informations d'identification et lorsque je l'ai exécuté,
git push
il m'a demandé mes informations d'identification GitHub, et cela a fonctionné comme un charme.la source
Essayez d'utiliser la commande ci-dessous.
Ici, vous pouvez obtenir diverses options pour gérer vos informations d'identification (consultez l'écran ci-dessous).
Ou vous pouvez même essayer directement cette commande:
Cela recommencera à demander des mots de passe à chaque demande d'interaction avec le serveur.
la source
git: 'credential-manager' is not a git command. See 'git --help'.
removal failed. U_U Press any key to continue... fatal: InvalidOperationException encountered. Cannot read keys when either application does not have a console or when console input has been redirected from a file. Try Console.Read.
(avec le joliU_U
emoji de nulle part :))J'ai trouvé quelque chose qui fonctionnait pour moi. Lorsque j'ai écrit mon commentaire à l'OP, je n'avais pas vérifié le fichier de configuration du système:
montre un
ligne. Je le dérange avec
et maintenant les pouvoirs sont oubliés.
la source
git config --global --unset credential.helper
et peut-être justegit config --unset credential.helper
dans votre référentiel si vous l'aviez défini de manière explicite.Dans mon cas, Git utilise Windows pour stocker les informations d'identification.
Tout ce que vous avez à faire est de supprimer les informations d'identification stockées dans votre compte Windows:
la source
montrera
credential.helper = manager
(c'est sur une machine Windows)Pour désactiver ce nom d'utilisateur / mot de passe mis en cache pour votre dossier git local actuel, entrez simplement
De cette façon, git demandera un mot de passe à chaque fois, ignorant ce qui est enregistré dans "manager".
la source
git: 'credential-' is not a git command. See 'git --help'.
mais pour des raisons de sécurité, je vote pour cette réponse car c'est la seule qui m'a fait demander un nouveau mot de passe. Je me demande, cependant, si cela ne masque pas seulement le problème (le mot de passe est-il vraiment supprimé?)rm -rf ~/.git-credentials
. Notez que cela peut varier (git help credential-store
)git config --unset credential.helper
efface l'entrée. Cette réponse la définit simplement sur une chaîne vide et produit l'erreur décrite par @ribamar dans les commentaires.Dans Windows 2003 Server avec "wincred" *, aucune des autres réponses ne m'a aidé. Je devais utiliser
cmdkey
.cmdkey /list
répertorie toutes les informations d'identification stockées.cmdkey /delete:Target
supprime les informations d'identification avec le nom "Target".(* Par "wincred" je veux dire
git config --global credential.helper wincred
)la source
cmdkey
est la contrepartie en ligne de commande des informations d'identification Windows décrites dans la réponse choisie.Cette erreur apparaît lorsque vous utilisez plusieurs comptes Git sur la même machine.
Si vous utilisez macOS, vous pouvez supprimer les informations d'identification enregistrées de github.com .
Veuillez suivre les étapes ci-dessous pour supprimer les informations d' identification de github.com .
Terminé
la source
Vous devez vous connecter avec github
username
etpassword
Pour effacer le nom d'utilisateur et le mot de passe dans Windows
Panneau de configuration \ Comptes d'utilisateurs \ Gestionnaire d'informations d'identification
Modifier les informations d'identification Windows
Supprimez l'utilisateur existant et maintenant allez à l'invite de commande, écrivez la commande push, il affiche une fenêtre pop-up github pour entrer le
username
/email
etpassword
.Maintenant, nous pouvons pousser le code après avoir changé d'utilisateur.
la source
Vous avez la même erreur lorsque vous faites un `` git pull '' et c'est ainsi que je l'ai corrigé.
git config --system --unset credential.helper
git config --system --add credential.helper manager
git pull
la source
Supprimez cette ligne de votre fichier .gitconfig situé dans le dossier utilisateur actuellement connecté de Windows:
Cela a fonctionné pour moi et maintenant, lorsque je pousse vers la télécommande, il demande à nouveau mon mot de passe.
la source
Vous devez le mettre à jour dans votre gestionnaire d'informations d'identification.
Accédez à Panneau de configuration> Comptes d'utilisateurs> Gestionnaire d'informations d'identification> Informations d'identification Windows. Vous verrez les informations d'identification Git dans la liste (par exemple git: https: //). Cliquez dessus, mettez à jour le mot de passe et exécutez la commande git pull / push depuis votre Git bash et il ne lancera plus de messages d'erreur.
la source
Dans le cas où Git Credential Manager pour Windows est utilisé (ce que font généralement les versions actuelles):
Cela a été ajouté mi-2016 . Pour vérifier si le gestionnaire d'informations d'identification est utilisé:
la source
En utilisant la dernière version de git pour Windows sur Windows 10 Professionnel et j'ai eu un problème similaire où j'ai deux comptes GitHub différents et également un compte Bitbucket, donc les choses sont devenues un peu déroutantes pour VS2017, les extensions git et git bash.
J'ai d'abord vérifié comment git traitait mes informations d'identification avec cette commande (exécutez git bash avec des commandes élevées ou vous obtenez des erreurs):
J'ai trouvé l'entrée Credential Manager, j'ai donc cliqué sur le bouton Démarrer> j'ai tapé Credential Manager et j'ai fait un clic gauche sur l'icône de coffre-fort jaune du gestionnaire d'informations d'identification qui a lancé l'application. J'ai ensuite cliqué sur les onglets des informations d'identification Windows et trouvé l'entrée pour mon compte git actuel qui se trouvait être Bit-bucket, j'ai donc supprimé ce compte.
Mais cela n'a pas fait l'affaire, la prochaine étape a donc consisté à supprimer les informations d'identification et je l'ai fait à partir du répertoire du référentiel sur mon ordinateur portable qui contient le projet GitHub que j'essaie de pousser vers la télécommande. J'ai tapé la commande suivante:
Ensuite, j'ai fait un push git et on m'a demandé un nom d'utilisateur GitHub que j'ai entré (le bon dont j'avais besoin), puis le mot de passe associé et tout a été poussé correctement.
Je ne suis pas sûr de l'ampleur du problème, la plupart des gens travaillent probablement sur le même référentiel, mais je dois travailler sur plusieurs et utiliser différents fournisseurs, donc je peux rencontrer à nouveau ce problème.
la source
Dans mon cas, je n'ai pas pu trouver les informations d'identification enregistrées dans le gestionnaire d'informations d'identification Windows (Windows 7).
J'ai pu réinitialiser mes informations d'identification en exécutant
Honnêtement, c'était une grêle Mary de voir si cela effacerait mes références et cela a vraiment fonctionné.
la source
Vous pouvez supprimer la ligne
credential.helper=!github --credentials
du fichier suivantC:\Program Files\Git\mingw64\etc\gitconfig
afin de supprimer les informations d'identification pour gitla source
C:\Users\<current-user>
.git-credentials
fichierla source
Sur Windows, au moins,
git remote show [remote-name]
fonctionnera, par exemplela source
Si vous voulez que git oublie les anciennes informations d'identification enregistrées et ressaisit le nom d'utilisateur et le mot de passe, vous pouvez le faire en utilisant la commande ci-dessous:
Après avoir exécuté la commande ci-dessus, si vous essayez de pousser quoi que ce soit, il fournira une option pour entrer le nom d'utilisateur et le mot de passe.
la source
Ce qui a finalement résolu cela pour moi était d'utiliser le bureau GitHub, d'aller dans les paramètres du référentiel et de supprimer user: pass @ de l'url du référentiel. Ensuite, j'ai tenté une poussée à partir de la ligne de commande et on m'a demandé des informations de connexion. Après les avoir mis, tout est revenu à la normale. Visual Studio et la ligne de commande fonctionnent, et bien sûr, le bureau GitHub.
Bureau GitHub-> Référentiel-> Paramètres du référentiel-> onglet À distance
Changer le référentiel distant principal (origine) de:
https: //pork@[email protected]/MyProject/MyProject.git
À:
https://github.com/MyProject/MyProject.git
Cliquez sur "Enregistrer"
Les pouvoirs seront effacés.
la source
Pour les utilisateurs de macOS:
Cette erreur apparaît lorsque vous utilisez plusieurs comptes Git sur la même machine.
Veuillez suivre les étapes ci-dessous pour supprimer les informations d'identification de github.com.
Sélectionnez le github.com et faites un clic droit dessus
Supprimer "github.com"
Essayez à nouveau de pousser ou de tirer pour git et il vous demandera les informations d'identification. Entrez des informations d'identification valides pour le compte de référentiel. Terminé
la source
Pour Windows 10, accédez au chemin ci-dessous,
Il y aura 2 onglets à cet endroit,
Cliquez sur l'onglet Informations d'identification Windows et ici vous pouvez voir vos informations d'identification github stockées, sous la rubrique "Informations d'identification génériques".
Vous pouvez supprimer ceux d'ici et essayer de recloner - il vous demandera maintenant le nom d'utilisateur / mot de passe car nous venons de supprimer les informations d'identification stockées des systèmes Windows 10
la source
Pour effacer le cache Git Credentials Managers for Windows:
ou
la source
Essayez ceci lorsque rien comme mentionné ci-dessus ne fonctionne pour vous.
cela supprimera le cache toutes les 3 secondes et demandera un nom d'utilisateur et un mot de passe. Vous pouvez réexécuter la commande avec des valeurs de délai d'attente augmentées.
la source
Dans notre cas, la suppression du mot de passe dans le fichier .git-credentials de l'utilisateur a fonctionné pour nous.
la source
Construire à partir de la réponse à haut vote de @ patthoyts ( https://stackoverflow.com/a/15382950/4401322 ):
Sa réponse utilise mais n'explique pas les configurations "locales" vs "globales" vs "système". La documentation officielle git pour eux est ici et mérite d'être lue.
Par exemple, je suis sous Linux et je n'utilise pas de configuration système , donc je n'utilise jamais d'
--system
indicateur, mais j'ai généralement besoin de faire la différence entre les configurations--local
et--global
.Mon cas d'utilisation est que j'ai deux références Github; un pour le travail et un pour le jeu.
Voici comment je traiterais le problème:
Il convient également de noter qu'il existe des moyens d'éviter ce problème, par exemple, vous pouvez utiliser
~/.ssh/config
des clés SSH associées pour Github (une pour le travail, une pour le jeu) et des hôtes distants nommés de manière correspondante pour résoudre l'authentification en contextualisant également.la source
Pour ajouter à @ericbn « s https://stackoverflow.com/a/41111629/579827 ici sont des exemples de commandes que j'ai intégré dans un script que je lance à jour tous mes mots de passe chaque fois qu'ils sont renouvelés. Ce n'est probablement pas utilisable tel quel car il est assez spécifique mais il montre l'utilisation réelle de
cmdkey.exe
.la source
Si vous êtes authentifié à l'aide de votre paire de clés, vous pouvez supprimer ou déplacer votre clé privée, ou arrêter l'agent de clé et essayer.
la source