Uploaded on

Présentation à la nAcademy (Octobre 2011) : GIT VS SVN par Florian Werich

Présentation à la nAcademy (Octobre 2011) : GIT VS SVN par Florian Werich

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
6,909
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
58
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. GIT vs SVN
  • 2. Plan• But de la présentation• Genèse• Système centralisé VS distribué• Branching• Staging area et nouveaux Workflows• Les outils graphiques• Ressources
  • 3. Pourquoi cette PrésentationGit fait de plus en plus parler de lui :• De nombreux projets sous Git o (Git, Linux Kernel, Perl, Eclipse, Gnome, KDE Qt, Ruby on Rails, Android, PostgreSQL Debian, X.org, Plone...)• le nombre total de commit pour la période de Janvier à Mai 2011 de Github est largement supérieur à ceux de Sourceforge, Google Code et Microsoft CodePlex.• Systeme de branching au coeur du fonctionnement de Git
  • 4. Au début il y avait BitKeeper...Kernel.org versionné par BitKeeper mais sa licence dutilisation change.Besoin : VCS rapide, gérant de gros volumes de donnéesOutils de remplacement : Aucun
  • 5. ...puis vint GitLinus Torvald crée son propre outil :• Outil écrit en 5 jours• Optimisé pour le noyau linux• exécution rapide des tâches (codé en C)• Zero perte dinformation ( DAG : directed Acyclic Graph ou graphe orienté acyclique)• Nombreuses fonctionnalités (détaillées plus loin)MAIS Git nest pas un VCS !
  • 6. Difference Svn/Git
  • 7. Différence Svn/GitSvn : Git:• checkout récupère la dernière • checkout récupère tout le repo révision • Pull/push online seulement• Checkout/commit/diff online • branching base de Git• branching non historisé • un seul .git par défaut• plusieurs .svn par sous • gestion de droits (base du répertoire fonctionnement de Github)• pas de gestion évoluée de • révision identifiée par droits hashcode des fichiers• révisions identifiées par • X workflows possibles incrément • historise : unversionné, new,• Workflow centralisé deleted, modifié,modifié "non• "Annulation" de commit ajouté" impossible• historise : unversionné, new, deleted, modifié
  • 8. Utilisation de Git comme Svn
  • 9. Utilisation de Git comme SvnGit ne revert pas. Tout est mémorisé, même les branchesmergées.Git aussi a des conflits...mais aucun basé sur le changementde nom dun fichier (ou sa suppression).On peut utiliser Git pour travailler sur Svn git svn clone http://svn.neuros.fr/...
  • 10. Branching : La principale puissance de GitMultiples branches locales :création, fusion (merge) ousuppression en quelques secondes.On peut :• Créer une branche pour essayer une nouvelle idée, committer, revenir à lendroit où vous avez créé cette branche, appliquer un patch, retourner là où vous expérimentez et fusionnez le avec votre branche principale.• Créer une nouvelle branche pour toutes les fonctionnalités que vous développez, puis effacer chaque branche une fois que la fonctionnalité est incluse dans la branche principale.
  • 11. Branching : La principale puissance de Git
  • 12. Staging area
  • 13. Exemples de Workflows
  • 14. Exemples de Workflows
  • 15. Outils graphiquesLes différents IDE possèdent leurs plugins Git : • Egit (Eclipse) • NBGit (NetBeans)Des utilitaires existent pour Git :• TortoiseGit• Git Tower (Mac)
  • 16. Ressourceshttp://fr.whygitisbetterthanx.com (Plaidoyer Pro git)http://progit.org/book/ (livre en ligne)http://blog.loof.fr/2010/08/from-svn-to-git.htmlhttp://www.git-attitude.frhttp://gitfr.net/blog/ (@gitfr)Videos de présentation http://www.parleys.com/#st=5&id=2366 http://www.parleys.com/#st=5&id=2368