Bazaar
Version Control
   Florian Motlik
Über Bazaar

 Freie Software (GPLv2) In Python geschrieben
 von Canonical (Ubuntu)
 verteiltes System
 für Windows, Mac, L...
Begriffe

    Revision - a snapshot of the files you're working with.
    Working tree - the directory containing your ver...
Verteilt vs Zentral

  Zentraler Server
  Jeder Commit direkt zum Server
  Zugriffskontrolle für jeden nötig




  Alle ha...
Workflows

 Solo
 Partner
 Zentral
 Zentral mit lokalen commits
 Dezentral mit geteilter mainline
 Dezentral mit menschlic...
Solo & Partner

  Init Repo
       bzr init-repo um Meta Repo anzulegen (für Performance)
       bzr init um Verzeichnis i...
Zentral

  Wie bei SVN/CVS
  Checkout statt Branches
     Checkout ist Branch der an Server gebunden ist
     bzr bind / b...
Dezentral

 Mirror Branch
    Haupt Branch nicht zum entwickeln
    Spiegelbild von Server
    Für Entwicklung davon wegbr...
Gatekeeper

 Nur wenige commit Recht auf Haupt Branch
 Menschlich
    Patch per Mail
    Repo veröffentlichen und Link sch...
Tips & Tricks

  Review Changes
     bzr status : Zeigt Veränderungen seit letztem commit
     bzr diff : Gibt diff der Ve...
Tips & Tricks

  Resolve Conflicts
     bzr conflicts : Listet Konflikte auf
     bzr resolve [filename] : Wenn Konflikt g...
Launchpad & Links

 Launchpad
    https://launchpad.net/
    Projektmanagement wie Sourceforge (nur besser)
    von Canoni...
Nächste SlideShare
Wird geladen in …5
×

JSUG - Bazaar by Florian Motlik

1.094 Aufrufe

Veröffentlicht am

visit http://jsug.fsinf.at

Veröffentlicht in: Technologie
0 Kommentare
0 Gefällt mir
Statistik
Notizen
  • Als Erste(r) kommentieren

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

Keine Downloads
Aufrufe
Aufrufe insgesamt
1.094
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
6
Aktionen
Geteilt
0
Downloads
8
Kommentare
0
Gefällt mir
0
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie

JSUG - Bazaar by Florian Motlik

  1. 1. Bazaar Version Control Florian Motlik
  2. 2. Über Bazaar Freie Software (GPLv2) In Python geschrieben von Canonical (Ubuntu) verteiltes System für Windows, Mac, Linux http://bazaar-vcs.org/
  3. 3. Begriffe Revision - a snapshot of the files you're working with. Working tree - the directory containing your version- controlled files and sub-directories. Branch - an ordered set of revisions that describe the history of a set of files. Repository - a store of revisions. http://doc.bazaar-vcs.org/bzr.dev/en/user-guide/index.html#core-concepts
  4. 4. Verteilt vs Zentral Zentraler Server Jeder Commit direkt zum Server Zugriffskontrolle für jeden nötig Alle haben eigenes Repository Alle Revisionen bei allen meistens kein Netz nötig Viele Merges, nicht Commits Zugriffskontrolle leichter
  5. 5. Workflows Solo Partner Zentral Zentral mit lokalen commits Dezentral mit geteilter mainline Dezentral mit menschlichem Gatekeeper Dezentral mit automatischem Gatekeeper
  6. 6. Solo & Partner Init Repo bzr init-repo um Meta Repo anzulegen (für Performance) bzr init um Verzeichnis in Repo zu verwandeln Solo cd my-stuff bzr init bzr add bzr commit -m quot;Initial importquot; Partner A: bzr init -> *hackhack* -> bzr commit B: bzr branch http://server.com/userA ->*hackhack* -> bzr commit A: bzr merge http://server.com/userB -> *hackhack* -> bzr commit B: bzr merge http://server.com/userA
  7. 7. Zentral Wie bei SVN/CVS Checkout statt Branches Checkout ist Branch der an Server gebunden ist bzr bind / bzr unbind Server kann auch gewechselt werden Howto bzr checkout http://someserver.com/repo hackhackhack bzr commit bzr update Ohne Netzwerk funktioniert commit nicht
  8. 8. Dezentral Mirror Branch Haupt Branch nicht zum entwickeln Spiegelbild von Server Für Entwicklung davon wegbranchen und mergen bzr branch http://server.com/trunk bzr branch trunk feature1 && hackhackhack bzr branch trunk fix1 && hackhackhack cd trunk merge ../fix1 commit(lokal) push zum server bzr update (pull) um Mirror Branch zu updaten
  9. 9. Gatekeeper Nur wenige commit Recht auf Haupt Branch Menschlich Patch per Mail Repo veröffentlichen und Link schicken Beurteilung des Codes Commited in Haupt Branch Automatisiert Patch an Software automatisierte Tests wenn Test OK commit auf zentralen Branch IOC bezüglich commits (Programmierer entscheidet nicht) Skalierbar (Subprojekt mit Main Branch und Lieutenant)
  10. 10. Tips & Tricks Review Changes bzr status : Zeigt Veränderungen seit letztem commit bzr diff : Gibt diff der Veränderung aus Browse History bzr log -r [0-9] : zeigt Zusammenfassung aller Revisionen bzr cat -r [0-9] file: zeigt bestimmte Rev von file Tagging Releases bzr tag 1.5-release : Tag 1.5-release erstellt Als Revision verwenden bzr diff -r tag:1.5-release bzr tag 1.5-release --force : tag überschreiben bzr tag 1.5-release --delete: tag löschen
  11. 11. Tips & Tricks Resolve Conflicts bzr conflicts : Listet Konflikte auf bzr resolve [filename] : Wenn Konflikt gelöst Annotate bzr annotate file - zeigt wer was geändert hat Rückgängig machen bzr revert -> Änderungen rückwärts auf tree ausgeführt bzr revert 19 -> zurück auf Rev 19 (neuer Commit) bzr revert -2 -> um zwei Revisions zurück bzr uncommit -3 -> löscht 3 Revs (tree unverändert)
  12. 12. Launchpad & Links Launchpad https://launchpad.net/ Projektmanagement wie Sourceforge (nur besser) von Canonical (Ubuntu) für FLOSS(Free libre Open Source Software) Projekte Bazaar Integration (Bug tracking, Feature tracking, Übersetzung) Links http://bazaar-vcs.org/ http://bazaar-vcs.org/Documentation - http://doc.bazaar-vcs.org/bzr.dev/ - User Doc

×