web-dev-qa-db-fra.com

Visual Studio Code demandant toujours des informations d'identification git

J'ai commencé à utiliser Code Visual Studio et j'essayais de sauvegarder mon projet de test dans GitHub , mais Code Visual Studio demande toujours mes GitHub informations d'identification.

J'ai installé sur mon PC GitHub Desktop et aussi Git , j'ai déjà exécuté:

 git config --global credential.helper wincred

mais toujours Code Visual Studio demande les informations d'identification.

De l'aide?

voici mon fichier .gitconfig situé dans le folfer du profil utilisateur:

    [filter "lfs"]
    clean = git-lfs clean %f
    smudge = git-lfs smudge %f
    required = true
[user]
    name = ddieppa
[user]
    email = [email protected]
[credential]
    helper = wincred

Voici les fenêtres popup demandant les informations d'identification:

 enter image description here

J'entre mon GitHub credentials dans le popup, mais j'obtiens toujours cette erreur dans la fenêtre de sortie Git dans Code Visual Studio :

remote: Anonymous access to ddieppa/LineOfBizApp.git denied.
fatal: Authentication failed for 'https://github.com/ddieppa/LineOfBizApp.git/'
117
ddieppa

J'ai trouvé la solution sur document VSCode :

Conseil: Vous devriez configurer un assistant d'identification pour éviter d'être interrogé pour obtenir des identifiants chaque fois que VS Code communique avec vos télécommandes Git. Si vous ne faites pas cela, vous pouvez envisager de désactiver la fonction d’extraction automatique dans le ... menu pour réduire le nombre d’invites que vous obtenez.

Activez donc l’assistant d’identification afin que Git conserve votre mot de passe en mémoire pendant un certain temps. Par défaut, Git mettra votre mot de passe en cache pendant 15 minutes.

Dans Terminal, entrez les informations suivantes:

git config --global credential.helper cache
# Set git to use the credential memory cache

Pour modifier le délai d'attente du cache du mot de passe par défaut, entrez les éléments suivants:

git config --global credential.helper 'cache --timeout=3600'
# Set the cache to timeout after 1 hour (setting is in seconds)

METTRE À JOUR

J'ai installé VS Code et la même configuration que ci-dessus, mais comme @ddieppa l'a dit, cela n'a pas fonctionné pour moi aussi. J'ai donc essayé de trouver une option dans les paramètres de l'utilisateur et j'ai vu "git.autofetch" = true, maintenant définissez-le sur false! VS Code n'est plus nécessaire pour entrer le mot de passe à plusieurs reprises à nouveau!

Dans le menu, cliquez sur Fichier/Préférences/Paramètre utilisateur Et tapez:

Placez vos paramètres dans ce fichier pour écraser les paramètres par défaut.

{
  "git.autofetch": false
}
95
Davuz

Vous devriez pouvoir définir vos identifiants comme ceci:

git remote set-url Origin https://<USERNAME>:<PASSWORD>@bitbucket.org/path/to/repo.git

Vous pouvez obtenir l'URL distante comme ceci:

git config --get remote.Origin.url

34
yohosuff

Essayez d’installer " Git Credential Manager For Windows " (et suivez les instructions de configuration du credential manager ).

Lorsque cela est requis dans une application utilisant Git (par exemple, VS Code), il ouvre " comme par magie " la boîte de dialogue requise pour la saisie des informations d'identification de Visual Studio Team Services.

19
Reddog

Cela a fonctionné pour moi:
1. Définir les informations d'identification pour stocker
$ git config --global credential.helper store
2. puis vérifiez si vous voulez:
$ git config --global credential.helper store

Exemple simple d'utilisation de git bash cité depuis Ici (fonctionne uniquement pour le référentiel actuel, utilisez --global pour tous les repos)

$ git config credential.helper store
$ git Push http://example.com/repo.git
Username: < type your username >
Password: < type your password > 

[quelques jours plus tard]
$ git Push http://example.com/repo.git
[vos informations d'identification sont utilisées automatiquement] 

Travaillera pour VS Code aussi.

Exemple plus détaillé et utilisation avancée ici .

Remarque: Nom d'utilisateur et mots de passe ne sont pas cryptés et stockés au format texte brut, utilisez-les uniquement sur votre ordinateur personnel.

18
Vaibhav Vishal

Tout ce que j'avais à faire était d'exécuter cette commande:

git config --global credential.helper wincred

Ensuite, on m'a demandé le mot de passe deux fois.

La prochaine fois, cela a fonctionné sans me demander de mot de passe.

11
GoTo

Utilisez ssh au lieu de http/https.

Vous devrez définir les clés ssh sur votre machine locale, les télécharger sur votre serveur git et remplacer le formulaire URL http:// par git:// et vous n'aurez plus besoin de mots de passe.

Si vous ne pouvez pas utiliser ssh, ajoutez ceci à votre configuration: 

[credential "https://example.com"]
    username = me

les documents sont ici .


Utiliser la clé ssh dans github


Suivez simplement ces étapes et vous configurerez votre clé ssh en un rien de temps:

  • Générez une nouvelle clé SSH (ou ignorez cette étape si vous en avez déjà une)
    ssh-keygen -t rsa -C "your@email"

  • Une fois que votre clé est définie dans le répertoire home/.ssh (ou Users/<your user>.ssh sous Windows), ouvrez-la et copiez le contenu.


Comment ajouter la clé sh au compte github?

  • Se connecter au compte github
  • Cliquez sur l'éleveur en haut à droite (Paramètres)
    github account settigns
  • Cliquez sur le SSH keys
    ssh key section
  • Cliquez sur le Add ssh key
    Add ssh key
  • Collez votre clé et sauvegardez

Et vous êtes tous prêts à partir :-)

10
CodeWizard

Les étapes suivantes vous expliquent comment:

  1. Générer des clés SSH (sans mot de passe **)
  2. Ajoutez la clé publique générée à l'étape 1 à votre référentiel Git
  3. Confirmez que les étapes ci-dessus ont été effectuées avec succès
  4. Faites votre premier commit (sans avoir à fournir un nom d'utilisateur/mot de passe)

** La génération de clés SSH sans phrase secrète n’est pas judicieuse si votre travail est particulièrement sensible. 

OS - Fedora 28 | Editor - VS Code v1.23.0 | Repository - Git

Générer des clés SSH:

  • ssh-keygen -t rsa -C "[email protected]"
  • Entrez le fichier dans lequel enregistrer la clé}: Appuyez sur Entrée.
  • Entrez la phrase secrète: Appuyez sur Entrée.
  • Entrez à nouveau le même mot de passe: appuyez sur Entrée

Une fois les étapes ci-dessus terminées, l’emplacement de votre clé publique apparaît dans la fenêtre du terminal. Si l'utilisateur actuellement connecté est "bob", l'emplacement de votre clé publique serait /home/bob/.ssh/id_rsa.pub

Copier et importer une clé publique dans GitHub:

  • cat /home/bob/.ssh/id_rsa.pub

  • Copiez la clé publique complète qui est maintenant affichée dans la fenêtre de votre terminal dans le presse-papiers.

  • Allez à https://github.com et connectez-vous
  • Cliquez sur l'icône de l'utilisateur dans le coin supérieur droit de l'écran et sélectionnez Paramètres
  • Cliquez sur clés SSH et GPG
  • Cliquez sur Nouvelle clé SSH
  • Entrez un titre, collez la clé publique copiée dans le presse-papiers dans le premier point, puis cliquez sur Ajouter une clé SSH

Confirmez les étapes ci-dessus: 

  • ssh -T [email protected]

  • yes

  • Bonjour! Votre authentification est réussie, mais GitHub ne fournit pas d'accès à Shell.

First commit/Push sans avoir à entrer un nom d'utilisateur/mot de passe: - touch test.txt

  • git add test.txt

  • git commit - ouvre l'éditeur, entrez un message et enregistrez le fichier. Si vi est votre éditeur, appuyez sur i une fois le fichier ouvert, entrez un message, appuyez sur échap, puis entrez :x pour enregistrer les modifications.

  • git Push

Le seul hic que vous pouvez rencontrer est lorsque vous essayez de SSH vers GitHub. Ce lien vous aidera - 

Bonne chasse!

4
Fnatical

Suite à cela article :

Vous pouvez simplement définir GIT_SSH env. var. au programme plink.exe du PuTTY . (utilisez ensuite pageant.exe comme agent d’authentification)

1
Paul Paku

Pour Windows 10: accédez au panneau de configuration/Gestionnaire des informations d'identification/Informations d'identification Windows -> cliquez sur le lien git, -> modifier -> mettre à jour avec un nouveau mot de passe. Cela devrait fonctionner

1
Meera

Après avoir combattu avec quelque chose comme cela pendant un moment, je pense avoir trouvé une bonne solution, en particulier lorsque j'ai plusieurs comptes à la fois sur GitHub et BitBucket. Cependant, pour VSCode, il a finalement été démarré à partir d’un terminal Git Bash, de sorte qu’il hérite des variables d’environnement de la session bash et sache quel agent ssh doit être consulté. 

Je me rends compte que c’est un vieil article mais j’ai encore beaucoup de mal à trouver un endroit pour obtenir les informations dont j’avais besoin. De plus, depuis 2017, ssh-agent a la possibilité de vous demander une phrase secrète uniquement lorsque vous essayez d'accéder à un référentiel.

Je dépose mes conclusions ici si quelqu'un est intéressé:

1
ScubaManDan

Utilisez une clé SSH sans phrase secrète.

Peut-être que cela est évident pour certains (ce n'était pas pour moi). Cela ne résout pas non plus le problème si vous avez absolument besoin d'une phrase secrète, mais c'était un compromis décent dans ma situation sur Mac.

1
adampfoster

J'ai résolu un problème similaire d'une manière simple:

  1. Aller au CMD ou au terminal
  2. Tapez git pull Origin master. Remplacez 'Origine' par votre nom de télécommande
  3. Il demandera les informations d'identification. Taper.

C'est tout. J'ai résolu le problème

0
Avinash

Pour moi, j’avais configuré mon référentiel distant avec une clé SSH, mais git n’avait pas pu la trouver car la variable d’environnement HOMEDRIVE était automatiquement configurée sur un partage réseau en raison de la politique de domaine de ma société. La modification de cette variable d’environnement dans mon Shell avant le lancement de code . a amené VSCode à hériter de la variable d’environnement correcte et à supprimer plus d’erreurs de connexion dans la fenêtre de sortie de git.

Maintenant, je dois juste comprendre comment remplacer la stratégie de domaine afin que HOMEDRIVE pointe toujours vers mon répertoire c:\users\marvhen local, qui est l'emplacement par défaut du répertoire .ssh.

0
marvhen

Résoudre le problème en suivant les étapes.

Logiciels désinstallés Vscode et Git et les réinstallés. Modification de l'URL de clone du référentiel git de ssh en https.

0
Sundar

J'ai réussi à arrêter cela en effectuant les étapes suivantes.

  1. Désinstallez Git Desktop (Pas certain que ce soit nécessaire)
  2. Désinstallez Credentials Manager cd "C:\Program Files\Git\mingw64\libexec\git-core" suivi de git-credential-manager.exe uninstall
  3. Réinitialiser l'assistant d'identification pour utiliser wincred git config --global credential.helper wincred
  4. User VS Code to Pousser certaines modifications et ressaisir les informations d'identification.

REMARQUE: J'utilisais un jeton d'accès personnel comme mot de passe.

0
Mick