SlideShare une entreprise Scribd logo
DÉVELOPPEZ AUTREMENT
RETOUR
D'EXPÉRIENCE
“pourquoi je me suis intéressé à GIT”
LE CONTEXTE
2008, chez un éditeur de soft au luxembourg
Le produit est sous Subversion
Différentes versions parralèlles à maintenir (3.9, 4.0,
etc.)
Des versions customs pour certains clients
Application découpée en modules
Equipes de développement dans différents sites (LU,
FR, ZA, SP)
Besoin de développer off-line (dans l'avion, chez un
client, etc. )
LE CHOIX DE GIT
Distribué
Workflow adaptable
Intégrations avec nos outils (forge, PIC, etc.)
MISE EN PLACE
Workflow basé sur des topic-branches:
un ticket = une branche
Les versions de maintenance sur des branches à long
terme
Roles d'intégrateurs
CONTSTAT
Premières semaines difficles (notamment les merges)
pour les non-teckos, mais réglé par une formation
interne d'une demi journée
Outils s'adapte aux processus en places (et non
l'inverse)
Productivité et qualité amélioré après quelques
semaines.
HISTORIQUE
“GIT (noun): a person who is deemed to be
despicable or contemptible”
2005
Linus Torvalds initie le projet pour le Kernel Linux car il a
besoin de changer de CVS (BitKeeper) rapidement.
Il décide d'arrêter Linux tant que ce n'est pas fait.
DESIGN
Distribué
Sûre (aucune perte de données)
Rapide
Et surtout :
prendre CVS comme exemple de ce qu'il ne faut pas faire
(ie. Subversion)
RÉALISATION
Démarré le 3 avril 2005
Annoncé le 6 avril 2005
1ère release du Kernel avec GIT, le 16 juin 2005
Le 26 juillet, le projet passe en maintenance et passe
dans les mains de Junio Hamano (toujours mainteneur).
CARACTÉRITIQUES
PRINCIPALES
“Au final c'est quoi GIT?”
DVCS
Complètement distribué
En ligne de commande
Il n'utilise pas de deltas mais des "packfiles", ce qui le
différencie des autres DCVS
Support de gros projets
Fait pour le merge et la gestion des branches
Orienté boite à outils
Bien intégré (par exemple, utilise des protocoles
existants)
DELTAS
PACKFILES
HISTORIQUE
FONCTIONNEMENT
“C'est compliqué?”
LES BASES
Toujours avoir à l'esprit que GIT est distribué
Une sheat cheet intérative
Git développez autrement
LES BRANCHES...
... LES BRANCHES
Types
Local
Remote
Local tracking Remote
Utilisation
Topic branches
Long term branches
Worflow based branches
Statégies de fusion
Merge
Rebase
Cherry pick
MERGE...
...MERGE
GIT FLAVOURS
“Killer features”
git stash: la cachette
git rebase: faire le ménage
git cherry-pick: la ceuillette aux commits
git submodules: travailler avec plusieurs dépôts
git commit --amend: corriger un commit
git bisect: l'arme ultime pour isoler le commit
fautif
WORKFLOWS
“Je fait ce qu'il me plait...”
SUBVERSION-STYLE WORKFLOW
Un dépots distant qui centralise les dépôts locaux.
Attention aux merges!
INTEGRATION MANAGER WORKFLOW
Une seule personne (l'intégration manager) fait les merges
et commit vers le blessed repository
DICTATOR AND LIEUTENANTS WORKFLOW
Modèle à la Linux Kernel.
Pour les gros projets
TOOLS
SCM: git-svn, git-cvs, subgit, etc.
GUI: TortoiseGit, gitg, giggle, SourceTree, etc.
Cloud/Web: Unfuddle, BitBucket, SourceForge, etc.
Admin: Gitorious, Gitblit, etc.
Entreprise: Github, Atlassion Stash, etc.
Kikkoolol: Gource
GITHUB
RÉFÉRENCES
WEB
git-scm.com
git.wiki.kernel.org
BOOK

Contenu connexe

PPTX
Versioning avec Git
PPTX
Présentation Git & GitHub
PDF
Les bases de git
PDF
Migration d'une base de code subversion vers git
PPTX
Git utilisation quotidienne
PPT
Git l'essentiel
PDF
Découvrir et utiliser Git : le logiciel de gestion de versions décentralisé
Versioning avec Git
Présentation Git & GitHub
Les bases de git
Migration d'une base de code subversion vers git
Git utilisation quotidienne
Git l'essentiel
Découvrir et utiliser Git : le logiciel de gestion de versions décentralisé

Tendances (20)

PPT
Git vs SVN
PDF
Git et les systèmes de gestion de versions
PDF
Git ou le renouveau du contrôle de version
PDF
Git pour les (pas si) nuls
PPTX
Présentation de git
PPTX
GitPourLaNulle
ODP
Développement avec Intégration continue:Git, Jenkins, Tomcat, CentOS, ubuntu
PPTX
Atelier Git + GitHub
PDF
Tutoriel GIT
PDF
Présentation du versioning avec Git
PDF
Git : Deux écoles de pensées, merge vs rebase
PDF
Petit Déjeuner Git chez Makina Corpus
PDF
Introduction à docker.io
PPTX
GitHub - Présentation
PDF
Git flow in action
PDF
Introduction à Docker et Gaudi
PDF
CI, CD, pipelines, conteneurs : la cohabitation est elle possible ?
PDF
Julien Maitrehenry - Docker, ça mange quoi au printemps
PDF
Déploiements avec Docker
Git vs SVN
Git et les systèmes de gestion de versions
Git ou le renouveau du contrôle de version
Git pour les (pas si) nuls
Présentation de git
GitPourLaNulle
Développement avec Intégration continue:Git, Jenkins, Tomcat, CentOS, ubuntu
Atelier Git + GitHub
Tutoriel GIT
Présentation du versioning avec Git
Git : Deux écoles de pensées, merge vs rebase
Petit Déjeuner Git chez Makina Corpus
Introduction à docker.io
GitHub - Présentation
Git flow in action
Introduction à Docker et Gaudi
CI, CD, pipelines, conteneurs : la cohabitation est elle possible ?
Julien Maitrehenry - Docker, ça mange quoi au printemps
Déploiements avec Docker
Publicité

En vedette (20)

PDF
Git Flow: un processus de développement Agile
PDF
Encimera Siemens EH775FD27E
PDF
Nevera Smeg FAB28RBV3
PDF
Nevera Smeg FAB32LBN1
PDF
Nevera Smeg FAB10HRR
PDF
Lavavajillas Smeg BLV2RO-2
PDF
Lavadora Smeg WHT710EES
PDF
Nevera Smeg FAB32RNEN1
PPTX
Cub cadet michelgagnon (2)
PDF
Horno Electrolux EOC5751FOX
PPT
Tondeuses toro catherine tremblay
PDF
Secadora BOSCH WTB86209EE
PDF
SECADORA BALAY 3SC871B
PDF
Encimera Teka IRS 933 HS
PDF
Nevera Smeg SBS63NED
PDF
Cocina Smeg CX91GVE
PDF
Encimera Siemens EH675FJ27E
PPT
Tuto DB Espace 19
PPSX
La creation
PPSX
Jehovah nous-invitent-ec
Git Flow: un processus de développement Agile
Encimera Siemens EH775FD27E
Nevera Smeg FAB28RBV3
Nevera Smeg FAB32LBN1
Nevera Smeg FAB10HRR
Lavavajillas Smeg BLV2RO-2
Lavadora Smeg WHT710EES
Nevera Smeg FAB32RNEN1
Cub cadet michelgagnon (2)
Horno Electrolux EOC5751FOX
Tondeuses toro catherine tremblay
Secadora BOSCH WTB86209EE
SECADORA BALAY 3SC871B
Encimera Teka IRS 933 HS
Nevera Smeg SBS63NED
Cocina Smeg CX91GVE
Encimera Siemens EH675FJ27E
Tuto DB Espace 19
La creation
Jehovah nous-invitent-ec
Publicité

Similaire à Git développez autrement (20)

PDF
Introduction à git.pdf
ODP
Eclipse DemoCamp 2011 @ Nantes: EGit
PDF
Chaine de production pipeline
PPTX
Adama Coulibaly.pptx
PDF
Versionning et travail en équipe avec Salesforce - 27/11/2014
PPT
Cours du soir_gwt
PDF
Configurer GitHub Actions avec Docker et DotNET 8.pdf
PDF
Utilisation de git avec Delphi
PPTX
Formation gitlab-ci Zied Zinelabidine.pptx
ODP
Gestion de projet Drupal : quelques outils indispensables - OWS - Drupalcamp ...
PPTX
gwxcwwxcwxcwxcwxcwxcwxcwxcwxcwxcwxcit.pptx
PDF
Drush make driven development
PDF
PDF
Architecture microservices avec docker
PDF
5. Approche Agile_gestion de version et qualité du code.pdf
PPT
20091020 - Normandy Jug - Builders Battle
PDF
Des poneys à Liberation.fr
PPTX
GIT & Future Branching-0d86ea39-71ad-4a19-940c-c10be7c33b08-9feea918-d69a-47e...
PDF
defuzeme_documentation_technique.pdf
PDF
Client Extensions - Episode 2 : Custom Element - 2024-04-30 - Liferay France ...
Introduction à git.pdf
Eclipse DemoCamp 2011 @ Nantes: EGit
Chaine de production pipeline
Adama Coulibaly.pptx
Versionning et travail en équipe avec Salesforce - 27/11/2014
Cours du soir_gwt
Configurer GitHub Actions avec Docker et DotNET 8.pdf
Utilisation de git avec Delphi
Formation gitlab-ci Zied Zinelabidine.pptx
Gestion de projet Drupal : quelques outils indispensables - OWS - Drupalcamp ...
gwxcwwxcwxcwxcwxcwxcwxcwxcwxcwxcwxcit.pptx
Drush make driven development
Architecture microservices avec docker
5. Approche Agile_gestion de version et qualité du code.pdf
20091020 - Normandy Jug - Builders Battle
Des poneys à Liberation.fr
GIT & Future Branching-0d86ea39-71ad-4a19-940c-c10be7c33b08-9feea918-d69a-47e...
defuzeme_documentation_technique.pdf
Client Extensions - Episode 2 : Custom Element - 2024-04-30 - Liferay France ...

Git développez autrement