SlideShare une entreprise Scribd logo
1  sur  13
Télécharger pour lire hors ligne
Hey, git.
Assurer une migration réussie d’un VCS vers git
[{"name":"Guy Lépine","company":"SherWeb","email":"glepine@sherweb.com"},
{"name":"Benoit St-André", "company":"PMCtire.com","email":"benoit@pmctire.com"}]
Objectif
Montrer quelques histoires à succès de passages de différentes méthodes de
contrôle de version de code source (VCS) à git.
Ce sont nos “faits vécus” - basé sur notre expérience et les circonstances
Recette du succès: les bons arguments
1. l’amélioration de la productivité par un meilleur concept de branche, par
exemple:
a. les branches de travail
b. l’intégration en continu (facilité par l’écosystème)
c. autant sinon plus de traçabilité que les autres systèmes de gestion de code source
2. l’historique local: utiliser un VCS sans serveur! Be your own backup! :-D
3. l’adoption par l’industrie et par conséquent, la quantité impressionnante
d’outils ayant un support git intégré
Recette du succès: le paradigme Git
Choses à retenir:
1. tout est local
2. les branches et les étiquettes sont des pointeurs
3. appliquer la décentralisation graduellement
a. des utilisateurs sont plus confortables en poussant des commits sur un serveur plutôt que sur la
machine d’un collègue
4. certains sont plus visuels que d’autres (command line vs outils)
Recette du succès: l’utilisation
1. Mode d’utilisation: centralisé vs décentralisé
2. Modèle de branches
a. gitflow
b. trunk-based
3. Collaboration
4. Modèles de revues de code
a. pull requests
Cas #1: SourceSafe -> git
● Outil: vss2git
● Utilisateurs: intermédiaires
● 4-5 dépôts
● migrations pour certains dépôts et démarrage à zéro pour certains autres
● timeframe: environ 3 mois
● serveur git: gitlab
Cas #2: TFS-TFVC -> TFS-git
● Outil: git-tf
● Utilisateurs: niveaux variés
● migration de la plupart des dépôts
● timeframe: 1 mois
● serveur: TFS 2015
Cas #3: svn -> git
● Outil: git-svn
● Utilisateurs: intermédiaires
● Migration des dépôts
● Timeframe: 1 semaine
● Serveur: bitbucket
Cas #4 - Git vers Git (quoi, on utilise pas déjà
Git?)
● Outil: ben, j’utilise déjà Git
● Utilisateurs: peu expérimentés
● Timeframe: quelques semaines
● Serveur: Gitlab
Recette du succès: le plan de migration
1. audit de l’utilisation du VCS
a. identification des données versionnées (type, projet, utilisateurs)
b. définition des activités de développement
c. définition des activités de devops
2. formation
a. évaluation du niveau de connaissance des utilisateurs
b. le plus près possible du moment de la migration
3. migration
Leçons apprises
1. Formation
a. certains utilisateurs ont à surmonter un plus grand changement de paradigme
b. certains concepts clés sont loin de la réalité actuelle des utilisateurs
2. Support alerte
a. surtout au début de la nouvelle ère, pour éviter les désagréments et la perte productivité
3. S’assurer que les outils de processus sont migrés d’abord
Recap
1. La migration:
a. les bons arguments
b. le paradigme
c. l’utilisation
2. Entretenir le feu
a. formation
b. outils
c. support
Questions?

Contenu connexe

Similaire à Hey, git ! Histoires de migration à git

Le système de versioning git
Le système de versioning gitLe système de versioning git
Le système de versioning gitNassim Bahri
 
Integration continue et déploiement automatisé
Integration continue et déploiement automatiséIntegration continue et déploiement automatisé
Integration continue et déploiement automatiséJérémie Campari
 
DODMTL 2019 - Agile et DevOps chez Croesus
DODMTL 2019 - Agile et DevOps chez CroesusDODMTL 2019 - Agile et DevOps chez Croesus
DODMTL 2019 - Agile et DevOps chez CroesusMartin Deslongchamps
 
Gitdv formation-git-pour-developpeurs
Gitdv formation-git-pour-developpeursGitdv formation-git-pour-developpeurs
Gitdv formation-git-pour-developpeursCERTyou Formation
 
8 Rex : Mise en place de DevOps sur Azure
8   Rex : Mise en place de DevOps sur Azure8   Rex : Mise en place de DevOps sur Azure
8 Rex : Mise en place de DevOps sur AzureaOS Community
 
Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...
Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...
Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...ENSIBS
 
Présentation du versioning avec Git
Présentation du versioning avec GitPrésentation du versioning avec Git
Présentation du versioning avec Gitmsadouni
 
Python application packaging @ MeilleursAgents
Python application packaging @ MeilleursAgentsPython application packaging @ MeilleursAgents
Python application packaging @ MeilleursAgentsNicolas Mussat
 
Présentation sur Maven 2 et petit retour d'expérience
Présentation sur Maven 2 et petit retour d'expériencePrésentation sur Maven 2 et petit retour d'expérience
Présentation sur Maven 2 et petit retour d'expérienceKhanh Maudoux
 
Présentation Maven
Présentation MavenPrésentation Maven
Présentation MavenSOAT
 
Ha zut, le DevOps a mangé ma vélocité par Jean-Marc Lavoie & Sylvie Trudel
Ha zut, le DevOps a mangé ma vélocité par Jean-Marc Lavoie & Sylvie TrudelHa zut, le DevOps a mangé ma vélocité par Jean-Marc Lavoie & Sylvie Trudel
Ha zut, le DevOps a mangé ma vélocité par Jean-Marc Lavoie & Sylvie TrudelAgile Montréal
 
Morning tech #2 - Démarche performance slides
Morning tech #2 - Démarche performance slidesMorning tech #2 - Démarche performance slides
Morning tech #2 - Démarche performance slidesOxalide
 
Oxalide Morning tech #2 - démarche performance
Oxalide Morning tech #2 - démarche performanceOxalide Morning tech #2 - démarche performance
Oxalide Morning tech #2 - démarche performanceLudovic Piot
 
What's Next Replay - IC / Jenkins
What's Next Replay - IC / JenkinsWhat's Next Replay - IC / Jenkins
What's Next Replay - IC / JenkinsZenikaOuest
 
Développement d'un grand projet piloté par les tests (BDD)
Développement d'un grand projet piloté par les tests (BDD)Développement d'un grand projet piloté par les tests (BDD)
Développement d'un grand projet piloté par les tests (BDD)Laurent PY
 
GIT training - basic for software projects
GIT training - basic for software projectsGIT training - basic for software projects
GIT training - basic for software projectsThierry Gayet
 

Similaire à Hey, git ! Histoires de migration à git (20)

Devops - Git - VSTS
Devops - Git - VSTSDevops - Git - VSTS
Devops - Git - VSTS
 
VSTS Git
VSTS GitVSTS Git
VSTS Git
 
Le système de versioning git
Le système de versioning gitLe système de versioning git
Le système de versioning git
 
Integration continue et déploiement automatisé
Integration continue et déploiement automatiséIntegration continue et déploiement automatisé
Integration continue et déploiement automatisé
 
Outils de gestion de projets
Outils de gestion de projetsOutils de gestion de projets
Outils de gestion de projets
 
DODMTL 2019 - Agile et DevOps chez Croesus
DODMTL 2019 - Agile et DevOps chez CroesusDODMTL 2019 - Agile et DevOps chez Croesus
DODMTL 2019 - Agile et DevOps chez Croesus
 
Gitdv formation-git-pour-developpeurs
Gitdv formation-git-pour-developpeursGitdv formation-git-pour-developpeurs
Gitdv formation-git-pour-developpeurs
 
3_SCM_Git.pdf
3_SCM_Git.pdf3_SCM_Git.pdf
3_SCM_Git.pdf
 
8 Rex : Mise en place de DevOps sur Azure
8   Rex : Mise en place de DevOps sur Azure8   Rex : Mise en place de DevOps sur Azure
8 Rex : Mise en place de DevOps sur Azure
 
Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...
Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...
Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...
 
Présentation du versioning avec Git
Présentation du versioning avec GitPrésentation du versioning avec Git
Présentation du versioning avec Git
 
Python application packaging @ MeilleursAgents
Python application packaging @ MeilleursAgentsPython application packaging @ MeilleursAgents
Python application packaging @ MeilleursAgents
 
Présentation sur Maven 2 et petit retour d'expérience
Présentation sur Maven 2 et petit retour d'expériencePrésentation sur Maven 2 et petit retour d'expérience
Présentation sur Maven 2 et petit retour d'expérience
 
Présentation Maven
Présentation MavenPrésentation Maven
Présentation Maven
 
Ha zut, le DevOps a mangé ma vélocité par Jean-Marc Lavoie & Sylvie Trudel
Ha zut, le DevOps a mangé ma vélocité par Jean-Marc Lavoie & Sylvie TrudelHa zut, le DevOps a mangé ma vélocité par Jean-Marc Lavoie & Sylvie Trudel
Ha zut, le DevOps a mangé ma vélocité par Jean-Marc Lavoie & Sylvie Trudel
 
Morning tech #2 - Démarche performance slides
Morning tech #2 - Démarche performance slidesMorning tech #2 - Démarche performance slides
Morning tech #2 - Démarche performance slides
 
Oxalide Morning tech #2 - démarche performance
Oxalide Morning tech #2 - démarche performanceOxalide Morning tech #2 - démarche performance
Oxalide Morning tech #2 - démarche performance
 
What's Next Replay - IC / Jenkins
What's Next Replay - IC / JenkinsWhat's Next Replay - IC / Jenkins
What's Next Replay - IC / Jenkins
 
Développement d'un grand projet piloté par les tests (BDD)
Développement d'un grand projet piloté par les tests (BDD)Développement d'un grand projet piloté par les tests (BDD)
Développement d'un grand projet piloté par les tests (BDD)
 
GIT training - basic for software projects
GIT training - basic for software projectsGIT training - basic for software projects
GIT training - basic for software projects
 

Hey, git ! Histoires de migration à git

  • 1. Hey, git. Assurer une migration réussie d’un VCS vers git [{"name":"Guy Lépine","company":"SherWeb","email":"glepine@sherweb.com"}, {"name":"Benoit St-André", "company":"PMCtire.com","email":"benoit@pmctire.com"}]
  • 2. Objectif Montrer quelques histoires à succès de passages de différentes méthodes de contrôle de version de code source (VCS) à git. Ce sont nos “faits vécus” - basé sur notre expérience et les circonstances
  • 3. Recette du succès: les bons arguments 1. l’amélioration de la productivité par un meilleur concept de branche, par exemple: a. les branches de travail b. l’intégration en continu (facilité par l’écosystème) c. autant sinon plus de traçabilité que les autres systèmes de gestion de code source 2. l’historique local: utiliser un VCS sans serveur! Be your own backup! :-D 3. l’adoption par l’industrie et par conséquent, la quantité impressionnante d’outils ayant un support git intégré
  • 4. Recette du succès: le paradigme Git Choses à retenir: 1. tout est local 2. les branches et les étiquettes sont des pointeurs 3. appliquer la décentralisation graduellement a. des utilisateurs sont plus confortables en poussant des commits sur un serveur plutôt que sur la machine d’un collègue 4. certains sont plus visuels que d’autres (command line vs outils)
  • 5. Recette du succès: l’utilisation 1. Mode d’utilisation: centralisé vs décentralisé 2. Modèle de branches a. gitflow b. trunk-based 3. Collaboration 4. Modèles de revues de code a. pull requests
  • 6. Cas #1: SourceSafe -> git ● Outil: vss2git ● Utilisateurs: intermédiaires ● 4-5 dépôts ● migrations pour certains dépôts et démarrage à zéro pour certains autres ● timeframe: environ 3 mois ● serveur git: gitlab
  • 7. Cas #2: TFS-TFVC -> TFS-git ● Outil: git-tf ● Utilisateurs: niveaux variés ● migration de la plupart des dépôts ● timeframe: 1 mois ● serveur: TFS 2015
  • 8. Cas #3: svn -> git ● Outil: git-svn ● Utilisateurs: intermédiaires ● Migration des dépôts ● Timeframe: 1 semaine ● Serveur: bitbucket
  • 9. Cas #4 - Git vers Git (quoi, on utilise pas déjà Git?) ● Outil: ben, j’utilise déjà Git ● Utilisateurs: peu expérimentés ● Timeframe: quelques semaines ● Serveur: Gitlab
  • 10. Recette du succès: le plan de migration 1. audit de l’utilisation du VCS a. identification des données versionnées (type, projet, utilisateurs) b. définition des activités de développement c. définition des activités de devops 2. formation a. évaluation du niveau de connaissance des utilisateurs b. le plus près possible du moment de la migration 3. migration
  • 11. Leçons apprises 1. Formation a. certains utilisateurs ont à surmonter un plus grand changement de paradigme b. certains concepts clés sont loin de la réalité actuelle des utilisateurs 2. Support alerte a. surtout au début de la nouvelle ère, pour éviter les désagréments et la perte productivité 3. S’assurer que les outils de processus sont migrés d’abord
  • 12. Recap 1. La migration: a. les bons arguments b. le paradigme c. l’utilisation 2. Entretenir le feu a. formation b. outils c. support