Mercurial

697 Aufrufe

Veröffentlicht am

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

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

Mercurial

  1. 1. Mercurial (HG)Distributed Version Control System (DVCS)
  2. 2. Warum DVCS?✤ Ärger mit SVN ✤ Commit bricht mit Fehler ab, Locks bleiben (NUL Ordner) ✤ Build-Fehler verhindern Commit ✤ Branching möglich, merging nicht ✤ Stabile Branches nicht praktikabel✤ Linux Kernelentwicklung mit SVN? -> Unmöglich
  3. 3. ✤ hginit.com ✤ Re-education: CVS & SVN-Wissen löschen ✤ Braucht Zeit✤ Beschränkung auf SVN Funktionen möglich ✤ Verbesserungen mit der Zeit ausprobieren ✤ Gibt keinen Grund nicht umzusteigen
  4. 4. Unterschiede✤ Commit ins lokale Repository✤ Push/Pull zu jedem beliebigen anderen✤ Lokale Snapshots ohne andere zu behindern✤ Vollständige History auch offline verfügbar ✤ Suche ist instant
  5. 5. Branching✤ Jede Änderung führt zu einem Branch ✤ sowohl HG als auch SVN (!) ✤ SVN kann das nicht abbilden, muss sofort mergen✤ nicht branchen ist schlimm, sondern mergen ✤ in HG ist auch merging kein Problem
  6. 6. Merging✤ HG betrachtet Changesets, SVN betrachtet Dateien✤ HG hat die ganze Änderungsgeschichte ✤ Viel viel weniger Konflikte beim mergen✤ Branches verschmelzen ✤ Keine Ordner-Leichen die keiner zuordnen kann
  7. 7. Der Maintainer✤ SVN Workflow✤ Maintainer verantwortlich für den Haupt-Branch (bzw. Clone) ✤ Code Review von fertigen Feature-Branches ✤ System of Trust ✤ Linus Torvalds
  8. 8. Hochskalieren✤ match2blue (svn) ✤ ca. 20 Entwickler an > 10 Repositories, tägliche Meetings ✤ Regelmäßig blockierte Entwicklung✤ Linux Kernel (git) ✤ 4.057 Entwickler an einem Repository, unorganisiert (2.6.12-2.6.26)
  9. 9. Hochskalieren^2
  10. 10. Vorteile✤ Hochskalieren der Teamgröße möglich✤ Dictator und Lieutnants haben tiefes Verständnis des Sourcecodes ✤ Gegensatz zur üblichen Wissen/Macht Disproportionalität✤ Code Reviews durch Maintainer ✤ Viele Fehler werden erkannt ✤ Neue Contributer schneller anlernen
  11. 11. HG bei match2blue✤ Frontend ✤ Alle match2blue Projekte & common ✤ Alle technet Prototypen ✤ MemberScout 2.8 mit stable & experimental branch✤ Backend ✤ Todo ✤ Deutlich mehr Leute pro Repository
  12. 12. HG vs. Git✤ Git ✤ ist komplexer ✤ history veränderbar (rebase, etc)✤ Mercurial ✤ ist einfacher ✤ history unveränderbar ✤ deutlich bessere Tools
  13. 13. Ende

×