GIT , gestionnaire de versions de fichiers
Christian Dupaty
BTS Systèmes Numériques Lycée Fourcade
13120 Gardanne
Avec l’aide d’OpenClassRoom
2
Git : logiciel de gestion de versions distruibuées
par un serveur.
3
GIT en bref
Git a été crée par Linus Torvalds (Linux) en 2005
Git est un logiciel de gestion de versions, Git n’héberge rien.
Les versions du projet sont enregistrées dans un dossier (le dépôt) et peuvent aussi être clonées en ligne.
Git fonctionne sur des sites collaboratifs dont le plus célèbre est GitHub qui est gratuit pour l’hébergement public
Git sait travailler par branches (versions parallèles d’un même projet)
Git prévu pour Linux existe également sous Windows et MacOs
4
CLI vs GUI
L’interface natif de Git est la console.
Il existe des interfaces graphiques, dont Git-GUI
Comme toujours les lignes de commande sont beaucoup moins gourmandes en ressources, l’informaticien préférera une
interface CLI.
5
Le langage de Git
Fork : une copie d’un dépôt public qui crée un clone
Commit : une mémorisation de l’état du projet à un instant choisi.
Diff : différences entre deux commit
Push : mettre à jour les commits en ligne (généralement sur GitHub) Pull : récupère un dépôt en ligne
Pull request : signale au propriétaire du dépôt et aux autres
membres qu’il y a un nouveau commit (inutile si on travaille seul) Issue : un problème, un bug
6
GitHub, mise en ligne des dépots
Télécharger les nouveautés Envoyer vos commits
$ git pull $ git push
7
Exemple : préparer le travail
Installation sous Linux-Debian: sudo apt-get install git-core Créer un compte sur GitHub
Sur le PC local :
Mettre à jour le fichier .gitconfig du dépot
$git config --global color.dif auto Facultatif
$git config --global color.status auto Facultatif
$git config --global color.branch auto Facultatif
$git config --global user.name aturing votre nom d’utilisateur
$git config --global user.email "alan.turing@gmail.com" votre email
Transformer le dossier du projet en dépôt Git
$cd emplacementDuDepot On va dans le repertoire qui deviendra un dépôt
$git init Création du dépôt
$git add monprog.c (git rm monprog.c pour le retirer) ajout d’un fichier au dépot
$git status pour connaître l’état du dépôt
Toutes ces informations sont
enregistrées dans le fichier .github
8
Créer un commit et le mettre en ligne
On crée le commit
$git commit -m "première version"
(-m pour ajouter un message)
$git remote add origin https://github/aturing/monprog.git
add ajoute, remote à distance origin est le nom du dépôt On le met en ligne :
$git push -u origin master
master est la branche à utiliser
9
Créer un clone
Git permet de cloner un dépôt ( fork ) afin de créer une base de travail pour un projet.
$git clone http://github.com/aturing/monprojet.git
Le dépôt monprojet de l’utilisateur aturing sera cloné dans le dossier de l’utilisateur courant
10
Git GUI
Sous Windows : https://git-for-windows.github.io/
Sous Linux : $sudo apt-get install git-gui Git Bash :
interpreteur linux- bash
Git-cmd
interpreteur DOS
Git-gui
interface graphique
11
Git GUI
Recherche les changements
Prend en compte les changements Crée un commit
Clone sur GitHub
12
Git GUI : Repository - visualize Master’s history
Sélectionner le commit Visualiser les changements
13
Travaux pratiques en CLI
●Créer votre compte personnel sur GitHub
●Sur une machine sous Linux :
●Créer un dossier GitTravail
●Créer dedans un fichier hello.c
compiler – tester : $gcc -o hello.c $./hello.o
●Transformer GitTravail en dépôt Git, inclure dans le dépôt hello.c, créer un commit, puis un clone sur GitHub, contrôler systématiquement l’état du dépot.
●Modifier hello.c, nouveau commit, nouveau clone …
●Recommencer jusqu’à maîtriser la procédure.
#include <stdio.h>
int main(void) {
printf("Salut tout le monde");
return(0);
}
14
Travaux pratiques en GUI
Sous Windows, reprendre le TP précédent en utilisant Git-Gui.
Pour en savoir plus sur Git :
https://openclassrooms.com/courses/gerez-vos-codes-source-avec-git