Git
Chapters ▾ 2nd Edition

2.1 Les bases de Git - Démarrer un dépôt Git

Si vous ne deviez lire qu’un chapitre avant de commencer à utiliser Git, c’est celui-ci. Ce chapitre couvre les commandes de base nécessaires pour réaliser la vaste majorité des activités avec Git. À la fin de ce chapitre, vous devriez être capable de configurer et initialiser un dépôt, commencer et arrêter le suivi de version de fichiers, d’indexer et valider des modifications. Nous vous montrerons aussi comment paramétrer Git pour qu’il ignore certains fichiers ou patrons de fichiers, comment revenir sur les erreurs rapidement et facilement, comment parcourir l’historique de votre projet et voir les modifications entre deux validations, et comment pousser et tirer les modifications avec des dépôts distants.

Démarrer un dépôt Git

Vous pouvez principalement démarrer un dépôt Git de deux manières.

  1. Vous pouvez prendre un répertoire existant et le transformer en dépot Git.

  2. Vous pouvez cloner un dépôt Git existant sur un autre serveur.

Dans les deux cas, vous vous retrouvez avec un dépôt Git sur votre machine locale, prêt pour y travailler.

Initialisation d’un dépôt Git dans un répertoire existant

Si vous commencez à suivre dans Git un projet existant qui n’est pas suivi en gestion de version, vous n’avez qu’à vous positionner dans le répertoire du projet. Si vous ne l’avez jamais fait, cela se présente de différentes manières selon votre système d’exploitation :

pour Linux:

$ cd /home/user/my_project

pour macOS:

$ cd /Users/user/my_project

pour Windows:

$ cd C:/Users/user/my_project

et entrez :

$ git init

Cela crée un nouveau sous-répertoire nommé .git qui contient tous les fichiers nécessaires au dépôt — un squelette de dépôt Git. Pour l’instant, aucun fichier n’est encore versionné. (Cf. Les tripes de Git pour plus d’information sur les fichiers contenus dans le répertoire .git que vous venez de créer.)

Si vous souhaitez démarrer le contrôle de version sur des fichiers existants (par opposition à un répertoire vide), vous devrez probablement suivre ces fichiers et faire un commit initial. Vous pouvez le réaliser avec quelques commandes add qui spécifient les fichiers que vous souhaitez suivre, suivies par un git commit :

$ git add *.c
$ git add LICENSE
$ git commit -m 'initial project version'

Nous allons détailler ce que ces commandes font dans quelques instants. À présent, vous avez un dépôt Git avec des fichiers suivis et un commit initial.

Cloner un dépôt existant

Si vous souhaitez obtenir une copie d’un dépôt Git existant — par exemple, un projet auquel vous aimeriez contribuer — la commande dont vous avez besoin s’appelle git clone. Si vous êtes familier avec d’autres systèmes de gestion de version tels que Subversion, vous noterez que la commande est clone et non checkout. C’est une distinction importante — Git reçoit une copie de quasiment toutes les données dont le serveur dispose. Toutes les versions de tous les fichiers pour l’historique du projet sont téléchargées quand vous lancez git clone. En fait, si le disque du serveur se corrompt, vous pouvez utiliser n’importe quel clone pour remettre le serveur dans l’état où il était au moment du clonage (vous pourriez perdre quelques paramètres du serveur, mais toutes les données sous gestion de version seraient récupérées — cf. Installation de Git sur un serveur pour de plus amples détails).

Vous clonez un dépôt avec git clone [url]. Par exemple, si vous voulez cloner la bibliothèque logicielle Git appelée libgit2, vous pouvez le faire de la manière suivante :

$ git clone https://github.com/libgit2/libgit2

Ceci crée un répertoire nommé libgit2, initialise un répertoire .git à l’intérieur, récupère toutes les données de ce dépôt, et extrait une copie de travail de la dernière version. Si vous examinez le nouveau répertoire libgit2, vous y verrez les fichiers du projet, prêts à être modifiés ou utilisés.

Si vous souhaitez cloner le dépôt dans un répertoire nommé différemment, vous pouvez spécifier le nom dans une option supplémentaire de la ligne de commande :

$ git clone https://github.com/libgit2/libgit2 monlibgit2

Cette commande réalise la même chose que la précédente, mais le répertoire cible s’appelle monlibgit2.

Git dispose de différents protocoles de transfert que vous pouvez utiliser. L’exemple précédent utilise le protocole https://, mais vous pouvez aussi voir git:// ou utilisateur@serveur:/chemin.git, qui utilise le protocole de transfert SSH. Installation de Git sur un serveur introduit toutes les options disponibles pour mettre en place un serveur Git, ainsi que leurs avantages et inconvénients.

scroll-to-top