Académique Documents
Professionnel Documents
Culture Documents
Librarian: tout 1er VCS apparu dans les années 70 sur le modèle des cartes perforées. Des
colonnes « virtuelles » étaient ajoutées pour dater la modification.
Fichier1_V3 Fichier1_V1
Fichier2_V2 Fichier1_V2
… Fichier2_V1
Uniquement en local
Pas de metadatas
Pas de suivis de l’historique
Très lourd à u8liser
mardi 16 mars 2021 Let's Git ! 7
1. Introduction : Différents systèmes
Gestion de version locale utilisant un VCS local èRCS
Fichier2 Version 2
Version 1
Uniquement en local
Très lourd à utiliser
Compliqué à utiliser à plusieurs
PC 1 Dépôt Centralisé
Version 3
Version 2
Version 1
PC 2
Fichier
Serveur PC 2
Fichier Fichier
Ø Comprendre
Ø Utiliser
Ø Explorer
Intégrité de fichiers
Ø Git vérifie l’intégralité de ses données par des sommes de contrôle avant de les stocke
Ø Cette somme de contrôle devient donc une signature unique, qui sert de référence
Ø On peut donc changer le contenu d’un fichier ou d’un répertoire sans que Git ne s’en rende
compte
Ø De fait, il est impossible de perdre des données lors du transfert ou de corrompre un fichier
$ git commit -a
Modifications
$ git add (-u) $ git commit $ git push
Local Remote
Workspace Index
Repository Repository
$ git merge // $ git rebase $ git fetch
Récupérations $ git pull
Installer Git:
https://git-scm.com/downloads
Ø Git permet et propose de travailler avec des branches, de façon simple, rapide et légère :
Ø On créer une branche pour chaque nouvelle fonctionnalité ou ensemble logique de
fonctions (ex: ajout de commentaires, ajout de liens de partages, hotfix, bugfix, etc.)
Ø Cela permet de tester une branche indépendamment du tronc principal (généralement
master)
Ø Une fois testé ou dans un état stable, on le fusionne avec le tronc commun
Ø Maîtriser ce concept de git est primordial !
$ vim test.rb
$ git commit -a -m 'made other changes'
Unmerged paths:
(use "git add <file>..." to mark resolution)
no changes added to commit (use "git add" and/or "git commit -a")
Une fois que j’ai résolu le conflit, je peux ajouter mon fichier à l’index et faire mon commit :
Conflicts:
index.html
#
# It looks like you may be committing a merge.
# If this is not correct, please remove the file
# .git/MERGE_HEAD
# and try again.
# Please enter the commit message for your changes. Lines starting
# with '#' will be ignored, and an empty message aborts the commit.
# On branch master
# All conflicts fixed but you are still merging.
#
# Changes to be committed:
# modified: index.html
#
Possible MAIS:
è Pas très agile
è Que se passe-t-il si l’on veut paralléliser les développements à plusieurs ?
è Très itéra8f
2/ Git Branching
https://learngitbranching.js.org/?locale=fr_FR&NODEMO=
3/ Git-it
https://github.com/jlord/git-it-electron#what-to-install
Comprendre
Utiliser
Explorer
Comprendre
Utiliser
Explorer