Comment désactiver les invites de mot de passe lorsque je fais git push / pull?
35
Chaque fois que je veux pushet / ou pulldepuis le terminal (sous Linux), je dois entrer un mot de passe. Comment puis-je supprimer cela pour qu'il tire et / ou pousse sans le mot de passe?
Quel est le protocole utilisé par votre adresse de dépôt? ssh? https?
VonC
Réponses:
23
Générez une paire de clés privée / publique pour une authentification sans mot de passe.
Pour Linux, vos clés sont stockées dans ~/.ssh.
Si vous avez déjà des fichiers ~/.sshnommés id_rsaet id_rsa.pub, vous avez déjà une paire de clés. Ajoutez le contenu de votre clé publique (c'est-à-dire id_rsa.pub) au fichier ~ / .ssh / authorized_keys du référentiel Git.
@slhck Ah, je n'y ai pas pensé! Cependant, il sera bon de savoir le système d'exploitation utilisé par whirlwin avant de publier d'autres instructions.
Jin
Merci pour le pointeur. J'ai mis à jour la question en conséquence!
whirlwin
1
Lorsque j'exécute la première commande, j'obtiens: Vous semblez utiliser ssh pour cloner une URL git: //. Assurez-vous que votre option de configuration core.gitProxy et la variable d'environnement GIT_PROXY_COMMAND ne sont PAS définies. connexion perdue
MultiformeIngegno
26
Courir
git config credential.helper store
Cela stockera vos informations d'identification dans un dossier à l'intérieur de la racine. Vous devez exécuter git pull / push après cette commande et donner le nom d'utilisateur / pwd pour la première fois. Après cela, il ne demandera pas l'utilisateur / pwd. Détails sur https://git-scm.com/docs/git-credential-store
cela devrait être sélectionné comme la bonne réponse à cette question. OMI, l'OP voulait demander une solution pour httpséviter d'avoir à saisir le nom d'utilisateur / mot de passe encore et encore, sans passer à la sshsolution. 1+ pour cette réponse.
Giang Nguyen
1
Notez que l'aide aux informations d'identification stocke le mot de passe sur le disque non chiffré.
n'est-ce pas très faux? car il n'y aura plus de sécurité
titus
3
Merci. C'est le correctif pour les personnes qui ont une configuration de clé SSH mais ne savent pas pourquoi elles doivent toujours saisir une phrase secrète.
J'avais créé une nouvelle branche et après cela, lorsque je tirais, je devais entrer le nom d'utilisateur et le mot de passe. Ensuite, je résous le problème de re-clonage de la branche avec l'adresse ssh (qui se trouve sur le site de référentiel approprié).
Réponses:
Générez une paire de clés privée / publique pour une authentification sans mot de passe.
Pour Linux, vos clés sont stockées dans
~/.ssh
.Si vous avez déjà des fichiers
~/.ssh
nommésid_rsa
etid_rsa.pub
, vous avez déjà une paire de clés. Ajoutez le contenu de votre clé publique (c'est-à-direid_rsa.pub
) au fichier ~ / .ssh / authorized_keys du référentiel Git.Si vous n'avez pas la paire de clés, générez-en une avec
$ ssh-keygen -t rsa
Lisez ceci pour plus d'instructions: http://inchoo.net/tools-frameworks/how-to-generate-ssh-keys-for-git-authorization/
la source
Courir
Cela stockera vos informations d'identification dans un dossier à l'intérieur de la racine. Vous devez exécuter git pull / push après cette commande et donner le nom d'utilisateur / pwd pour la première fois. Après cela, il ne demandera pas l'utilisateur / pwd. Détails sur https://git-scm.com/docs/git-credential-store
la source
https
éviter d'avoir à saisir le nom d'utilisateur / mot de passe encore et encore, sans passer à lassh
solution. 1+ pour cette réponse.Vous pouvez également simplement modifier votre phrase secrète et la remplacer par une chaîne vide:
ssh-keygen -p
la source
J'avais créé une nouvelle branche et après cela, lorsque je tirais, je devais entrer le nom d'utilisateur et le mot de passe. Ensuite, je résous le problème de re-clonage de la branche avec l'adresse ssh (qui se trouve sur le site de référentiel approprié).
Par exemple:
la source