Datenbanksystementwicklung – Einführung BitKeeper – Knut Stolze
2 Versions Management System “BitKeeper” Jeder Nutzer hat eigenes Repository und arbeitet nur lokal Eigenes Repository wird mit “Parent” Repository zu einem selbst gewählten Zeitpunk synchronisiert Änderungen an mehreren Dateien werden zu sogenannten “ChangeSets” zusammengefasst – Jedes ChangeSet muss beschrieben/dokumentiert werden Quelle:
3 Repository Struktur (1) Parent Repository iibm08.inf.uni-jena.de /home/db2prak/implprak/mgr/dbj Lokales Repository 1 ipc640.inf-db.uni-jena.de /home/stolze/dbj-projekt Lokales Repository n iibm08.inf.uni-jena.de ~iprak00/dbj bk clone dbj-projektbk clone ~mgr/dbj dbj
4 Repository Struktur (2) Lokales Repository n iibm08.inf.uni-jena.de /home/db2prak/implprak/mgr/dbj Lokales Repository merkur.somewhere.de /home/obihan/dbj bk clone dbj
5 Nutzung Kommandozeile: “bk ” Hilfe: – bk helptool
6 bk helptool
7 Wichtige Kommandos (1) bk clone Lege lokalen Clone von einem existierenden Repository an bk edit vor dem Ändern einer Datei um lokale, änderbare Version der Datei zu erhalten bk unedit Bisher erfolgte Änderungen rückgängig machen bk citool graphisches Tool, um Änderungen zu ChangeSets zusammenzufassen und zu bestätigen (“bk commit”)
8 bk citool
9 Wichtige Kommandos (2) bk pull Änderungen des Parent-Repository in eigenes, lokales Repository zu holen (nach eigenem “commit”) Nutzt “ssh” für Remote Verbindungen bk resolve Manuelle Konflikauflösung nach “bk pull” für Änderungen, die nicht automatisch aufgelöst werden konnten Unterkommandos “f” für 3-Wege Merge-Tool und “C” für “commit” der ge”merge”ten Datei
10 Wichtige Kommandos (3) bk push Änderungen im lokalen Repository in das Parent- Repository propagieren Nutzt “ssh” für Remote Verbindungen bk mv / bk mvdir Umbenennen von Dateien/Verzeichnissen bk rm Löschen von Dateien/Verzeichnissen
11 Nicht ganz so wichtige Kommandos bk setuptool Wizard zum Anlegen neuer Projekte und deren Repositories Nicht für unser Projekt verwenden – “bk clone” ist die Wahl hier! bk revtool Überblick über die verschiedenen ChangeSets erhalten
12 bk revtool