Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.
La gestion de version avec                                                 Git                                          ([...
La petite histoire                               Les avantages                             Scénario dutilisationMakina Cor...
SubVersioN : CVS done right                  «There is no way to do CVS right. »                                          ...
La petite histoire                               Les avantages                             Scénario dutilisationMakina Cor...
La Petite Histoire2002 ●     Linus choisit BitKeeper pour le noyau Linux      ●          « Merge » facilité      ●        ...
La Petite Histoire2005 ●     5 Avril :      BitKeeper devient payant ●     6 Avril :      Linus annonce son prototype « Gi...
« Im an egotistical bastard, and I name all my         projects after myself. First Linux, now git. »                     ...
La petite histoire                               Les avantages                             Scénario dutilisationMakina Cor...
Les Avantages : 1 - décentralisé ●     Local                                                         Dev      ●          N...
Les Avantages : 2 – léger ●     Un clone parfait      ●          = complet ●     Rapide !      ●          Réseau seulement...
Les Avantages : 3 – branché           $ svn merge -r11:10 http://svn/svn/my_repos/test           $ svn: REPORT request fai...
Les Avantages : 3 – branché ●     Vue graphique ●     Locales et/ou distantes ●     Algorithmes de fusion (« merge ») ●   ...
Les Avantages : 3 – branché ●     Manipulation facilitée ●     Cest le core committer celui qui développe, qui gère les co...
La petite histoire                               Les avantages                             Scénario dutilisationMakina Cor...
Scénario dutilisation   ●     Initialisation  $ cd demo  $ git init .  Initialized empty Git repository                   ...
Scénario dutilisation ●   Ajout dun dépôt distant$ git remote add origin git://you@server/demo.git/  ●   Synchronisation :...
Scénario dutilisation ●     Travail en local                                                Désynchro ●   Collaboration   ...
Scénario dutilisation                         Départ ●   Nouvelle branche$ git branch refactor$ git checkout refactor........
Scénario dutilisation ●   Tagger une version$ git tag 1.0 ●   Se rendre à un commit antérieur$ git checkout 1.0$ git check...
Et maintenant ?     $ sudo aptitude install git ●     Dispo sur GNU/Linux, OS X, BSD, Solaris, AIX, BeOS... et Windows ●  ...
ReconVersion SubVersion                                                        Git trunk                                  ...
Nächste SlideShare
Wird geladen in …5
×

Petit Déjeuner Git chez Makina Corpus

1.873 Aufrufe

Veröffentlicht am

18 Octobre 2011

Veröffentlicht in: Technologie
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

Petit Déjeuner Git chez Makina Corpus

  1. 1. La gestion de version avec Git ([ʒit] [git]) mathieu.leplatre@makina-corpus.comMakina Corpus – Présentation de Git – Toulouse, 18 Octobre 2011.
  2. 2. La petite histoire Les avantages Scénario dutilisationMakina Corpus – Présentation de Git – Toulouse, 18 Octobre 2011.
  3. 3. SubVersioN : CVS done right «There is no way to do CVS right. » - Linus TorvaldsMakina Corpus – Présentation de Git – Toulouse, 18 Octobre 2011.
  4. 4. La petite histoire Les avantages Scénario dutilisationMakina Corpus – Présentation de Git – Toulouse, 18 Octobre 2011.
  5. 5. La Petite Histoire2002 ● Linus choisit BitKeeper pour le noyau Linux ● « Merge » facilité ● Non-linéaire ● Décentralisé2005 ● 17000 fichiers, 6 millions de lignes ● 400 développeurs ● 3 patches/heure, 3200 lignes/jour ● Une version = 5000 patchsMakina Corpus – Présentation de Git – Toulouse, 18 Octobre 2011.
  6. 6. La Petite Histoire2005 ● 5 Avril : BitKeeper devient payant ● 6 Avril : Linus annonce son prototype « Git » ● 7 Avril : Une instance est hébergée chez lui ● 18 Avril : Merge multiple de branches ● 16 Juin : Sortie du noyau 2.6.12 géré sur Git2011 ● Septembre : 1 million dutilisateurs sur GitHubMakina Corpus – Présentation de Git – Toulouse, 18 Octobre 2011.
  7. 7. « Im an egotistical bastard, and I name all my projects after myself. First Linux, now git. » - Linus TorvaldsMakina Corpus – Présentation de Git – Toulouse, 18 Octobre 2011.
  8. 8. La petite histoire Les avantages Scénario dutilisationMakina Corpus – Présentation de Git – Toulouse, 18 Octobre 2011.
  9. 9. Les Avantages : 1 - décentralisé ● Local Dev ● Nimporte où ! ● Mode déconnecté Public ● Serveur facultatif ● Distant ● Branche par branche ● Publication @server ● Déploiement /home ● ex : heroku.com SVNMakina Corpus – Présentation de Git – Toulouse, 18 Octobre 2011.
  10. 10. Les Avantages : 2 – léger ● Un clone parfait ● = complet ● Rapide ! ● Réseau seulement pour synchroniser ● Ultra-performant ! ● Ne stocke que les « diff »  ● Ex : Mozilla 12Go → 420Mo ● Branches et Tags ● = fichiers métadonnées ● Transport : SSH, FTP, HTTP, WebDAV, Email...Makina Corpus – Présentation de Git – Toulouse, 18 Octobre 2011.
  11. 11. Les Avantages : 3 – branché $ svn merge -r11:10 http://svn/svn/my_repos/test $ svn: REPORT request failed on /svn/my_repos/!svn/bc/11/test $ svn: MERGE request failed on /svn/repository/trunk $ svn: MERGE of /svn/repository/trunk: 200 OK (http://svn.myserver.com)Makina Corpus – Présentation de Git – Toulouse, 18 Octobre 2011.
  12. 12. Les Avantages : 3 – branché ● Vue graphique ● Locales et/ou distantes ● Algorithmes de fusion (« merge ») ● Déplacement (« rebase ») ● Avec suivi (« track »)Makina Corpus – Présentation de Git – Toulouse, 18 Octobre 2011.
  13. 13. Les Avantages : 3 – branché ● Manipulation facilitée ● Cest le core committer celui qui développe, qui gère les conflits ! ● « pull request » ● Nouveaux paradigmes (« Git Flow ») ● 1 version = 1 branche ● 1 feature = 1 branche ● Brouillon ? → branche ! ● Temporaire ? → branche ! ● Interrompu ? → branche !Makina Corpus – Présentation de Git – Toulouse, 18 Octobre 2011.
  14. 14. La petite histoire Les avantages Scénario dutilisationMakina Corpus – Présentation de Git – Toulouse, 18 Octobre 2011.
  15. 15. Scénario dutilisation ● Initialisation $ cd demo $ git init . Initialized empty Git repository gitg est ton ami ● Premières contributions dans master $ git add README $ git commit -m "Premier" (edition de README) $ git commit -a -m "Deuxième" Local!Makina Corpus – Présentation de Git – Toulouse, 18 Octobre 2011.
  16. 16. Scénario dutilisation ● Ajout dun dépôt distant$ git remote add origin git://you@server/demo.git/  ● Synchronisation : envoi$ git push origin master Local Distant ● Synchronisation : réception$ git pull origin master ● commit != pushMakina Corpus – Présentation de Git – Toulouse, 18 Octobre 2011.
  17. 17. Scénario dutilisation ● Travail en local Désynchro ● Collaboration Distant$ git fetch origin Local Commit ajouté ● Fusion !$ git merge origin/mastergit pull = Fetch+MergeMakina Corpus – Présentation de Git – Toulouse, 18 Octobre 2011.
  18. 18. Scénario dutilisation Départ ● Nouvelle branche$ git branch refactor$ git checkout refactor......$ git commit -m "Changement" ● Fusionner avec master$ git merge master ou ● Repositionner refactor$ git rebase masterMakina Corpus – Présentation de Git – Toulouse, 18 Octobre 2011.
  19. 19. Scénario dutilisation ● Tagger une version$ git tag 1.0 ● Se rendre à un commit antérieur$ git checkout 1.0$ git checkout 0ec2ab ● Annuler les derniers commits$ git reset HEAD~1Makina Corpus – Présentation de Git – Toulouse, 18 Octobre 2011.
  20. 20. Et maintenant ? $ sudo aptitude install git ● Dispo sur GNU/Linux, OS X, BSD, Solaris, AIX, BeOS... et Windows ● Eclipse Indigo 3.7 : Egit ● TurtoiseGit ● git-svn : mirroir Git dun dépôt Subversion ● git mergetool : Utilise meld par ex. pour résoudre les conflits ● Server Git  = Server SSH + git init --bare /path/repo ● http://github.com ● http://gitorious.orgMakina Corpus – Présentation de Git – Toulouse, 18 Octobre 2011.
  21. 21. ReconVersion SubVersion Git trunk master svn checkout git clone (+git checkout) svn commit git commit -a + git push svn update git pull svn add git add svn merge -r 20:HEAD git merge branch http://example.com/svn/branches/branch svn copy http://example.com/svn/trunk git tag name http://example.com/svn/tags/name svn copy http://example.com/svn/trunk git branch branch http://example.com/svn/branches/branch git checkout branch svn switch http://example.com/svn/branches/branchMakina Corpus – Présentation de Git – Toulouse, 18 Octobre 2011.

×