Création et configuration de clés SSH pour les dépôts distants Git

Pour connecter un dépôt local à un dépôt distant comme GitHub, il est essentiel de configurer une authentification SSH. Voici les étapes clés pour générer et utiliser des clés SSH avec Git.

Génération d'une paire de clés SSH

Vérifiez d'abord si un répertoire .ssh existe dans votre répertoire personnel. S'il contient des fichiers comme id_rsa et id_rsa.pub, passez à l'étape suivante. Sinon, ouvrez un terminal et exécutez :

$ ssh-keygen -t ed25519 -C "utilisateur@exemple.com"

Remplacez l'adresse e-mail par la vôtre. Suivez les invites en appuyant sur Entrée pour utiliser les valeurs par défaut. Une fois terminé, la paire de clés sera générée dans le répertoire .ssh : id_ed25519 (clé privée, à garder secrète) et id_ed25519.pub (clé publique, partageable).

Ajout de la clé publique à GitHub

Connectez-vous à votre compte GitHub, accédez aux paramètres du compte, puis à la section "SSH Keys". Cliquez sur "Add SSH Key", saisissez un titre descriptif et collez le contenu du fichier id_ed25519.pub dans le champ "Key".

Liaison du dépôt local au dépôt distant

Dans votre dépôt local, par exemple nommé projet-local, associez-le au dépôt distant avec la commande suivante :

$ git remote add origin git@github.com:votre-nom-utilisateur/projet-serveur.git

Assurez-vous de remplacer votre-nom-utilisateur et projet-serveur.git par vos propres informations. Le nom origin est la convention par défaut pour le dépôt distant.

Envoi du contenu vers le dépôt distant

Poussez la branche locale principale vers le dépôt distant avec :

$ git push -u origin main
Énumération des objets : 15, fait.
Compression des objets : 100% (10/10), fait.
Écriture des objets : 100% (15/15), 2.45 Kio | 2.45 Mio/s, fait.
Total 15 (delta 3), réutilisés 0 (delta 0)
Vers git@github.com:votre-nom-utilisateur/projet-serveur.git
 * [nouvelle branche]      main -> main
Branche principale configurée pour suivre la branche distante main depuis origin.

Cette commande transfère les fichiers de la branche locale actuelle vers la branche distante correspondante.

Clonage d'un dépôt distant

Pour obtenir une copie locale d'un dépôt distant existant, utilisez :

$ git clone git@github.com:votre-nom-utilisateur/projet-cloné.git
Clonage dans 'projet-cloné'...
remote : Énumération des objets : 5, fait.
remote : Total 5 (delta 0), réutilisés 0 (delta 0)
Réception des objets : 100% (5/5), fait.

Cela crée un nouveau répertoier local avec tout l'historique du dépôt distant.

Synchronisation avec git pull

Pour récupérer et intégrer les modifications d'une branche distante, utilisez git pull. Sa syntaxe générale est :

$ git pull <hôte-distant> <branche-distante>:<branche-locale>

Par exemple, pour fusionner la branche développement de l'origine distante avec la branche locale main :

$ git pull origin développement:main

Si vous souhaitez fusionner avec la branche courante, omettez la partie après les deux-points :

$ git pull origin développement

Ce processus équivaut à exécuter git fetch suivi de git merge. Pour vérifier ou configurer des relations de suivi entre branches locales et distantes, utilisez des commandes comme :

$ git branch --set-upstream-to=origin/développement main

Cela établit une relation de suivi pour simplifier les futures synchronisations. Si la relation de suivi est déjà définie, vous pouvez simplifier la commande :

$ git pull origin

Cela fusionnera automatiquement la branche distante suivie par la branche courante.

Étiquettes: Git SSH github dépôt distant clé ssh

Publié le 27 juin à 20h42