Verteilte versionsverwaltung mit Team Foundation Server 2012

678 views

Published on

First Slide in German. Rest in English

Handout here:

http://blog.bbv.ch/2012/11/19/distributed-version-control-with-team-foundation-server-2012/

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
678
On SlideShare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • Vorstellen Thorstenbbv:seit knapp 17 Jahren, 180 MA, Softwaredienstleistungen an, von kleinsten Geräten im embeddedservice bis zu verteilten Anwendungen im .net und java Service bis zu spezialisierten Testing DienstleistungenFragen am Ende  ausser unsere Fragen: wer setzt bereits TFS ein?EN Handout auf blogMotivationWieso verteilte Versionsverwaltung… TFS hat doch ein zentralisiertes Modell?Wir möchten Ihnen zeigen, dass es in vielen Situation durchaus sinnvoller ist auf ein verteiltes Modell zu setzen.Trotzdem aber nicht die Vorteile vom TFS zu verlieren.Wie Sie das erreichen und die Vorteile für sich nutzen, das werden Sie in den nächsten 60 Minuten erfahren.Vorstellen DaniProvokation Hey Thorsten, Git ist ein mächtiges Verteiltes Versionsverwaltungssystem, da kann TFS direkt einpacken!Dani auf diese Provokation von dir war ich vorbereitet. Switch nächste Folie.
  • Moderne ALM Plattform  somit nicht nur ein VCSTools fürRequirements-Befund – Prozessmanagement (agile Prozesse, Scrum)BuildfunktionalitätTestinfrastrukturDiskussionen im Netz/blogposts/ Vergleich TFS nur immer mit anderen VCS Produkten, alles andere wird einfach «vergessen». Schade bei «2012er» Version  einiges dazugekommen und nochmals verbessert
  • Was soll all das Lästern über die Sourceverwaltung von TFS?Dani: …  am häufigsten auftauchenden Beschwerden
  • Offlineunterstützung fehlt - Lokale Commits - Lokale Branches - Lokale HistoryImmer-Online Model  Hohe Latenzzeit
  • Mergefunktionalität limitiertMehrere Leute am gleichen Code (Umbennennen, Verschieben)Server Workspace  Schreibgeschützten Dateien  Erschwert Zusammenarbeit mit anderen Tools
  • Tools verwenden die nicht in VS integriert sind (z.B. Buildscript mit Texteditor) Rückverfolgung von Änderungen schwierig wenn ausserhalb der Standardtoolbox
  • Opensourcewelt richtige Sourcepatches z.B. via EmailShelvesets als zu schwergewichtig EmpfundenStimmt das noch?
  • GegenargumentierenNeue Features im TFS 2012 mit VS 2012Gerade zur Verbesserung Offline zu arbeiten
  • GegenargumentierenOffline – lokale Workspaces schreibgeschützte Dateien Subversion MEHR: lokale history (kurze Pause) Vergleich in Bearbeitung – letzte Version  rollbackGrosser SchrittAsync bei checkout – keine Latenz mehr
  • neuer Team Explorer gesehenundverwendetlokale Build-Datei ausserhalb VSBereich «detectedchanges»
  • Grossartige Neuerungen im Bereich MergingCommunitymit Git beschäftigt«automagisch»ABER immer noch Probleme bei grossen refactorings
  • Grosse refactoringsManuelles mergen kostet ZeitUnd dabei spielt es keine Rolle klein/gross Geographisch verteiltGeschäft boomt  neue AnforderungenRefactoring/Redesignam gleichen Verhalten arbeitenDirekt um die Ecke/vor der Tür
  • Gerade hierbei kommen verteilte Versionsverwaltungssysteme zum EinsatzDezentralisiertes Modell aufgebautStärken:Komplexe MergingoperationenZeitweise verbunden – evtl. sogar grösstenteils offlineMeist verbreitestesOpensource DVS: GitGit bietet AntwortenEintauchen Funktionalität Git und kommen dann darauf zurückTFS und Git kombinieren
  • Dani: «… Einblick in die Geschichte von Git geben? Dass wir wissen wo wir stehen?»
  • - Source Code Control System und Revision Control System- Einzige Datei versioniert, arbeiten mit Exklusiv Lock
  • - Concurrent Versioning System, Visual Source Safe, Subversion, Team Foundation Server und Perforce- Mehrere Dateien versionieren, zentralisiertes Modell- Auschecken beliebiger Version aus Repo- Wenig Restriktiv gegenüber gleichzeitigen Modifikation (jedoch Merge vor Commit)
  • - Git, Mercurial, Bazaar und Bitkeeper- Changeset und nicht Dateien, verteiltes Modell- Changesets können versandt werden, Clients und Server lokale History- Merge von Commit getrennt (Commit vor Merge)
  • DVCS mehrere Vorteile. Verschiedene Topologien genutzt werden nach Bedürfnis
  • Zentralisiertes ModellTypischerweise in Grossfirmen
  • Hierarchisches ModellVon Zeit zu Zeit periodisches MergenSubsystembasierte Repositories z.B. Linuxkernel Grafik, Audio…
  • Verteiltes ModellOft in Opensourcewelt (Codeplex, Github)Backups sehr einfach (volle History bei jedem Klon)Starkes Branching und MergingErleichtert arbeiten mit Featurebranches und immer unter VersionskontrolleAnalysen auf lokalen Repos
  • Linus TorvaldsBitkeeper keine Lizenzen mehr gratis Anbot für LinuxentwicklerPerl und C, start 2005Name git: (en: Blödmann, Depp)„I'm an egoisticalbastard, and I name all myprojects after myself. First Linux, nowgit.“– Linus Torvalds
  • Designgrundlagen: Geschwindigkeit, Einfachheit, Branching und Merging, Dezentralisierung und SkalierbarkeitAnfang vor allem Linuxkernelentwicklung, Crossplattform
  • Integrationsbrücken schlagen die Brücke von Git zu TFS in beide RichtungenGit-TF Microsoft August V1Anfang Nov. V2Codeplex kostenlosChocolatelyCloneConfigureCheckinFetchPullShelveShelvesetsUnshelveSupported: TFS 2008-2012
  • Was ist Git-TF?Set von KommandozeilentoolsTFS klonen zu GitÄnderungen lokal aus Git zu aktialisierenGenial was dies alles erlaubt!Moment … Wie sieht so eine Infrastruktur aus?
  • Zentralisiertes Modell von TFSwork-itemBuild und IntegrationsplattformKombiniert mit verteiltes Modell von Git!!Nochmal: zentrale Interationsplattform mit Management und Reportingfunktionalitätkombiniert offline problemlos zu arbeitenMergenlokale Branches«verteilter Manier»… lass es uns ..
  • Für den Ausdruck
  • TeamExplorer Everywhere Modell, Java Runtime, Auf allen PlattformenBefreie dein Entwicklungsprozess mit Git-TF und den mächtigen Eigenschaften von Team Foundation Server 2012 und fühle Dich nie mehr eingeschränkt!
  • Verteilte versionsverwaltung mit Team Foundation Server 2012

    1. 1. Verteilte Versionsverwaltungmit Team Foundation Server 2012Thorsten RufTFSALM Consultantblog.bbv.chthorsten.ruf@bbv.chDaniel Marbachdotnet-zentral.ch@danielmarbachdaniel.marbach@bbv.ch
    2. 2. TFSVCS
    3. 3. Ranting
    4. 4. Offline
    5. 5. Merge
    6. 6. Outside the toolbox
    7. 7. Patching
    8. 8. Anti-Ranting
    9. 9. Anti-Rantinglocalworkspace
    10. 10. Anti-RantingChangedetection
    11. 11. Anti-Rantingmerging
    12. 12. Refactor / Redesign
    13. 13. Distributed
    14. 14. History
    15. 15. FirstSecondThird Generations
    16. 16. First SingleFileGenerations
    17. 17. SecondCentral ServerRepositoryFile basedMerge for CommitGenerations
    18. 18. ThirdChangeset basedCommit for MergeGenerations
    19. 19. Advantages
    20. 20. Shared MasterCentralized
    21. 21. Submodule 2 Submodule 1Hierarchical
    22. 22. Distributed
    23. 23. About
    24. 24. SpeedSimplicityBranching & MergingDecentralizedScalabilityDesign principles
    25. 25. Demo
    26. 26. Bring the worlds together
    27. 27. Tool
    28. 28. TFStftftf
    29. 29. Why care?
    30. 30. Verteilte Versionsverwaltungmit Team Foundation Server 2012Handout, Sources and more underhttp://blog.bbv.ch/2012/11/19/distributed-version-control-with-team-foundation-server-2012

    ×