Vous vous demandez surement ce qu’est Git ! En bref Git est un outil de versionnage, en gros il permet de stocker l’état d’un fichier à un instant précis et de suivre les changements d’un fichier dans le temps.

Comment ça fonctionne ?

Quand on crée un projet Git, un dossier caché .git est créé au sein de notre projet. Celui-ci contient plusieurs fichiers de configuration et de journalisation. À chaque instant, vous pouvez ajouter des modifications grâce aux outils en ligne de commande (CLI) où à des interfaces graphiques (ex : Git Graph for VSCode, Fork).

Il permet également de créer des « branches », ce terme est un terme très important pour comprendre le fonctionnement même de Git. Une branche permet de stocker et modifier une version du code indépendante des autres branches.

Exemple de branches d'un dépôt git

Pour illustrer ça, on va partir d’un point simple : quand on crée un dépôt, on travaille par défaut sur la branche « master ». Or, cette branche, dans les bonnes pratiques, devrait contenir uniquement une version fonctionnelle du code. Ainsi, nous ne sommes amenés que très peu souvent à développer sur cette branche. À la place, on a une branche nommée « dev » qui part de la branche principale. La branche dev, elle, sera une sorte de copie éditable de master sur laquelle on peut ajouter des fonctionnalités pour lesquelles on peut créer des sous-branches si nécessaire. Ainsi, quand le code de la branche dev est fonctionnel, on peut la « merge » ou fusionner avec le master. Cela pour mettre à jour notre version dite de production, celle distribuée aux utilisateurs.

Git apporte aussi un avantage considérable, il permet d’ajouter un serveur nommé « remote ». On peut y stocker toutes les versions de notre code et toutes nos branches. Comme ça, on peut y accéder depuis n’importe quel ordinateur ou même travailler à plusieurs !

Qui en a vraiment besoin ?

De mon expérience, je ne pourrais pas me passer de Git, il est utile dans n’importe quel projet, autant individuel que d’équipe. Il vous permettra de sauvegarder votre code. Et, si vous faites une erreur, de retourner à la dernière version fonctionnelle de votre code.

Comment utiliser Git ?

Tout d’abord, il est essentiel d’installer le CLI de Git. Il permet le versionnage en local quand il n’est pas associé à un serveur. Toutes les commandes du CLI peuvent être trouvées sur Git SCM.

Ceci étant dit, vous n’êtes pas obligé d’être familiarisé avec les lignes de commandes pour l’utiliser. Il existe énormément d’interfaces graphiques.

Le moyen le plus simple d’utiliser Git est d’utiliser Visual Studio Code (macOS, Linux, Windows) qui, en plus d’être un excellent IDE, intègre Git par défaut. Pour l’initialiser, il vous suffit de taper git init dans la console de VSC pour créer le dossier caché .git et hop c’est parti ! Il vous suffit de cliquer sur l’icône en forme de branches.

icône git dans visual studio code

Le second client graphique que je ne peux que recommander est Fork, disponible sur macOS et Windows qui permet d’avoir une vision claire sur ce qui se passe dans un repository (dépôt).

Exemple d’un dépôt Git dans Fork

Enfin, vous pouvez utiliser le client GitHub Desktop. C’est une solution clé en main si vous ne vous sentez vraiment pas à l’aise avec Git. Mais vous serez obligé d’utiliser des dépots sur GitHub.

Quel serveur Git utiliser ?

Pour tous les projets qui sont personnels ou Open-source, la tradition veut que l’on utilise GitHub. C’est un service très performant appartenant depuis peu à Microsoft. C’est également la plateforme que je conseille aux débutants car elle est très simple à prendre en main. En effet, les commandes pour synchroniser le serveur à l’environnement de développement sont toutes prêtes pour être collées dans un terminal quand on crée un dépôt sur GitHub.

création dépôt git sur github
Création d’un dépôt Git sur GitHub

Pour les entreprises, on se tourne davantage vers GitLab qui est une solution très performante, mais qui requiert un meilleur niveau pour être correctement exploité au mieux. GitLab peut par ailleurs être installé sur un serveur Linux pour vous créer votre propre serveur git.

Conclusion

Vous l’avez compris, c’est un outil extrêmement important pour n’importe quel projet de développement, surtout pour des gros projets ou autres projets en équipe.

Si vous voulez voir à quoi ressemble un dépôt sur GitHub, vous pouvez jeter un œil ici !