1
votes

Le clone Git demande toujours un jeton d'accès personnel (dépôt privé)

Chaque fois que j'essaye de cloner un dépôt privé, je reçois une invite pour ajouter mon nom d'utilisateur et mon mot de passe.

J'ai regardé autour de moi pour voir ce qui ne va pas, car j'ai ajouté mon mot de passe et je n'ai pas fonctionné, et j'ai découvert que je devais utiliser le jeton d'accès personnel. Maintenant, chaque fois que j'essaie de cloner un dépôt privé, je dois ajouter ce jeton (ou générer un autre).

Existe-t-il un moyen de cloner un dépôt git privé sans le jeton? Ou au moins pour pouvoir ajouter mon mot de passe à la place de ce jeton?


1 commentaires

Pourriez-vous s'il vous plaît ajouter des informations concernant le dépôt git source, est-ce sur github? bitbucket, gitlab un serveur git nu? est-il configuré avec des clés ssh et / ou LDAP?


3 Réponses :


0
votes

Vous pouvez cloner en utilisant SSH et vous authentifier à l'aide de votre clé SSH. Il existe un joli guide de GitHub explique comment configurer git avec SSH, et cela fonctionne de manière très similaire pour les autres fournisseurs. Une fois que vous l'avez configuré, n'oubliez pas de cloner le dépôt en utilisant l'URL SSH (pas celle HTTPS), ou de changer l ' origine de votre dépôt cloné en URL SSH.


0 commentaires

7
votes

Vous pouvez utiliser le stockage des informations d'identification git pour stocker votre nom d'utilisateur et vos mots de passe tout en accédant au référentiel via https.
Exécutez

git config credential.helper 'cache --timeout=3600'

puis

git pull

Cela vous demandera votre nom d'utilisateur et vos mots de passe, puis s'en souviendra pour une utilisation future. Veuillez noter que l'exécution des commandes ci-dessus créera un fichier à ~ / .git-credentials et stockera les informations d'identification en texte brut, ce qui peut être un risque pour la sécurité. Une alternative consiste à stocker les informations d'identification dans la mémoire plutôt que sur le disque. Pour ce faire, vous pouvez exécuter la commande ci-dessous.

git config credential.helper store

De cette façon, git n'utilisera aucun fichier sur le disque et utilisera la mémoire pour stocker les informations d'identification. l'argument timeout ici est utilisé pour spécifier que les informations d'identification doivent être mises en cache pendant 1 heure.


0 commentaires

0
votes

<½SOLUTION

C'est ainsi que j'ai réussi à le faire fonctionner.

Ouverture d'un nouveau terminal et ajout

ssh-keygen -t rsa -b 4096 -C "[adresse e-mail github]"

Ce qui suit est affiché dans le terminal

Génération d'une paire de clés rsa publique / privée. [appuyez sur Entrée] Entrez le fichier dans lequel enregistrer la clé (/home/${USER}/.ssh/id_rsa): Entrez la phrase de passe (vide si aucune phrase de passe): [appuyez sur Entrée] Saisissez à nouveau la même phrase secrète: [appuyez sur Entrée]

Alors

cd /.ssh ls [vous devriez voir 3 fichiers] cat [fichier] .pub

Copiez le contenu puis accédez aux paramètres de votre profil Github -> Clés SSH et GPG -> Nouvelle clé SSH -> collez-y le contenu de [fichier] .pub. Après cela, je peux cloner le dépôt github avec SSH sans avoir besoin d'ajouter le jeton.


0 commentaires