Installation de git sous Windows

Ce document décrit une méthode pour installer git sous windows.

Programmes à télécharger

En supposant que nous partons de rien, il y a trois programmes à télécharger.

msysgit
C'est le programme principal, vous trouverez toute l'information nécessaire à la page msysgit - Git for Windows. Au moment d'écrire ce doc, Git-1.7.6-preview20110708.exe était l'exécutable proposé.
PuTTYgen
Un des programmes de la suite PuTTY, il vous permettra de générer les clés qui serviront dans les transactions avec la machine Mélusine. Vous le trouverez dans la PuTTY Download Page.
TortoiseGit
Interface à git. Très pratique1, elle intègre, en particulier, les transactions avec les dépôts dans le menu contextuel. La page dédiée est tortoisegit - Porting TortoiseSVN to TortoiseGIT.

Installations

Installation de msysgit

Une seule chose à faire, lancer l'installateur et accepter toutes les propositions faites... Il faut bien noter le répertoire où sera installé2 msysgit, il vous sera demandé plus tard, au moment de la configuration de TortoiseGit. Ce programme fonctionnera en fond.

Installation de puttygen

Là, pas d'installation, le programme téléchargé est celui qu'il faudra exécuter pour générer une paire de clés.

À cet endroit de la procédure, on peut commencer à s'organiser pour gérer ses dépôts locaux. Voici ce que j'ai fait pour tester la procédure décrite ici.

  1. Création d'un répertoire GitSyracuse sur le bureau et d'un sous-répertoire key.
  2. Glissement du fichier puttygen téléchargé dans le dossier key.

Installation de TortoiseGit

Après lancement du programme d'installation, un certain nombre d'écrans vont apparaître, en particulier:

  1. Choix du client SSH, opter pour TortoisePLink.
  2. Répertoire et options d'installation, accepter les propositions.

Une fois la procédure terminée, vous devez voir quelques changements dans le menu contextuel (click droit). Trois items supplémentaires apparaissent : Git Clone..., Git Create repository here... et TortoiseGit (vers un sous-menu).

Choisissez alors TortoiseGit > Settings, il vous sera demandé de localiser le programme msysgit. Cela sera le moment d'entrer le chemin d'installation que vous avez retenu suivi de \bin. Vous indiquerez le même chemin pour les DLL. En cliquant sur Check vous vérifierez que tout est correct, la version de msysgit reconnue sera inscrite.

Configuration de TortoiseGit

Configuration de TortoiseGit

En retournant plus tard à ce panneau, vous pourrez procéder à une configuration plus fine...

Tout est prêt maintenant sur votre machine pour l'utilisation de git. Vous pouvez cloner des dépôts dont vous trouverez l'adresse sur le net et qui ne nécessitent pas d'authentification. Vous pouvez aussi faire le choix d'utiliser git comme système de versionnement pour vos propres projets locaux; c'est bien utile de pouvoir revenir aux versions antérieures des documents ou programmes que l'on écrit...

Usage

Créer une paire de clés

L'interaction avec les dépôts git de Syracuse3 utilise la canal SSH, il faut donc disposer d'une paire de clés pour les transactions.

Déplacez-vous dans le répertoire key évoqué ci-dessus et cliquez sur l'icône de PuTTYgen. Une fenêtre de dialogue apparaît, cliquez sur Generate, suivez les instructions et le tour est joué, vous disposez de votre paire de clés.

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

Génération d'une paire de clés avec PuTTYgen

Avant de fermer la fenêtre:

  1. Remplissez de façon moins anonyme le champ Key comment, choisissez un format de la forme pseudo@lieu en évitant les chiffres. Ce comment servira à vous identifier dans la configuration d'un système gitosis (comme celui de Syracuse).

  2. Vous avez le choix d'associer une passphrase à votre paire de clés ou laisser vide les deux champs concernés. Mettre une passphrase est une protection supplémentaire; si vous êtes sûr que votre clé privée ne tombera pas entre les mains d'une personne indélicate vous pouvez laisser les champs vides.

  3. Copier le contenu du premier champ Public key for pasting into OpenSSH authorized_keys file, collez le dans un fichier dont le nom sera pseudo@lieu.pub; c'est lui que vous me communiquerez pour intervenir sur un des projets de Syracuse, par exemple.

  4. Sauvegardez la clé publique en cliquant sur le bouton Save public key, cela peut toujours servir. Il faut noter qu'il y a une petite différence dans le format avec le contenu évoqué à l'étape précédente.

  5. Sauvegardez la clé privée dans votre répertoire key, elle se retrouvera avec l'extension .ppk.

NOTE 1 – Vous gardez bien précieusement votre clé privée, vous ne la communiquez jamais ! Les deux clés étant couplées, si vous perdez votre clé privée4, il faudra régénérer une paire.

NOTE 2 – Pour les utilisateurs de Linux et windows vous pouvez convertir, à partir de cette même fenêtre, votre clé privée du format (Open)SSH2 vers le format PuTTY... Cela permet de ne diffuser qu'une seule clé publique.

Cloner son premier dépôt

Il est grand temps de commencer !

Si vous souhaitez participer à un projet de Syracuse, voire publier sur Syracuse, faites-moi parvenir votre clé publique en pièce attachée.

Exemple

Supposons que vous souhaitiez participer au projet geshi.

  1. Faites le moi savoir !
  2. Attendez la confirmation que vous êtes bien inscrit dans la liste des contributeurs et que votre clé est enregistrée par gitosis.
  3. Ouvrez votre répertoire GitSyracuse, placez la souris au dessus et choisissez Git Clone... dans le menu contextuel (click droit).
    Enregistrement d'un projet
    Dans le champ Url inscrivez l'adresse ssh://gitosis@melusine.eu.org:xxx/geshi.git5, le champ Directory doit être correctement empli, cochez la case Load Putty Key et sélectionnez votre clé privée. Ok !

Normalement un dossier geshi va être constitué, vous disposez ainsi d'une copie du projet sur lequel vous pouvez travailler. La suite est une autre histoire, une autre page...


  1. Comme TortoiseSVN dont elle est un portage.

  2. Que vous acceptiez celui qui est proposé ou que vous en choisissiez un autre.

  3. Dans les deux sens clone et push.

  4. Ou si vous avez un doute sur sa confidentialité.

  5. xxx est le numéro du port SSH sur la machine Mélusine qui vous sera communiqué lors de votre enregistrement.