Git est un logiciel de gestion de version : il permet d'enregistrer l'état d'un projet (ensemble de fichiers) à
un instant donné : on a ainsi la version xxx du projet. Il est toujours possible de revenir à une version
antérieure si l'avancement du projet "a dérapé"...
Il est aussi possible de créer des branches divergentes de la branche principale (master), puis de fusionner les
branches ultérieurement.
Il est nécessaire d'installer Git sur son ordinateur pour l'utiliser !
Après l'installation de Git, il faut juste une simple configuration en console :
git config --global user.name "votre identifiant"
git config --global user.email "votre adresse mail"
Github est une plateforme qui permet d'héberger des projets (repositories) en ligne. Il faut se créer un compte pour y accéder. On peut évidemment consulter tous les projets publics de la communauté, et par exemple démarrer un projet personnel à partir d'un projet déjà existant (fork), ou même proposer des contributions (pull requests) sur des projets d'autres utilisateurs.
En couplant l'utilisation de Git et Github, on peut conserver l'état de l'avancement de ses projets en ligne en toute sécurité.
Je me limiterai à une utilisation basique de Git et Github : un seul utilisateur qui travaille sur son projet dans son coin.
https://github.com/identifiant/nom_du_repo.git
git clone <adresse_du_repo>
git status
: donne l'état actuel du dossier vis-à-vis de Git.Encore une fois, je me contente de décrire les fonctionnalités de base :
git add <nom du fichier>
(pour ajouter un fichier spécifique à l'index de Git).git add .
(pour ajouter tous les fichiers du dossier à l'index de Git).git commit -m "message d'info du commit"
git push
git pull
Je vais donc résumer les étapes de "travail quotidien" sur un projet. En parlant de "travail quotidien", je suppose qu'on travaille sur un ordinateur qui a déjà cloné un Repo, et pour lequel on veut "avancer" dans le projet.
git pull
git add .
git commit -m "info sur les modifs"
git push
Cette fois, je décris quelques commandes supplémentaires, mais en restant toutefois assez basique (ça peut donner des idées pour aller plus loin...) :
git status
git branch
git branch <nouvelle_branche>
git checkout <nouvelle_branche>
git log
git checkout <SHA du commit désiré>
L'éditeur de code que j'utilise et que je conseille (forcément puisqu'il me convient) est Visual Studio Code (VSC). Cet éditeur intègre une gestion de Git+Github.
Si on ouvre dans VSC un dossier qui a été initialement cloné depuis un Repo Github, on retrouve donc intégrées toutes les fonctionnalités décrites précédemment. Une barre de status apparaît en bas indiquant la branche active et une icône de synchronisation, et sur le côté gauche une icône de branche permet de gérer les commits.