120 likes | 230 Views
Datenbanksystementwicklung – Einführung BitKeeper –. Knut Stolze stolze@informatik.uni-jena.de. Versions Management System “BitKeeper”. Jeder Nutzer hat eigenes Repository und arbeitet nur lokal
E N D
Datenbanksystementwicklung– Einführung BitKeeper – Knut Stolze stolze@informatik.uni-jena.de
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: http://www.bitkeeper.com/
Repository Struktur (1) Parent Repository iibm08.inf.uni-jena.de /home/db2prak/implprak/mgr/dbj bk clone mgr@iibm08:dbj dbj-projekt bk clone ~mgr/dbj dbj Lokales Repository 1 ipc640.inf-db.uni-jena.de /home/stolze/dbj-projekt Lokales Repository n iibm08.inf.uni-jena.de ~iprak00/dbj
Repository Struktur (2) Lokales Repository n iibm08.inf.uni-jena.de /home/db2prak/implprak/mgr/dbj bk clone iprak00@iibm08:dbj dbj Lokales Repository merkur.somewhere.de /home/obihan/dbj
Nutzung • Kommandozeile: “bk <command>” • Hilfe: • bk helptool
Wichtige Kommandos (1) • bk clone <Parent-Rep> <lokales Repository> • Lege lokalen Clone von einem existierenden Repository an • bk edit <Datei> • vor dem Ändern einer Datei um lokale, änderbare Version der Datei zu erhalten • bk unedit <Datei> • Bisher erfolgte Änderungen rückgängig machen • bk citool • graphisches Tool, um Änderungen zu ChangeSets zusammenzufassen und zu bestätigen (“bk commit”)
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
Wichtige Kommandos (3) • bk push • Änderungen im lokalen Repository in das Parent-Repository propagieren • Nutzt “ssh” für Remote Verbindungen • bk mv <Datei vorher> <nachher> /bk mvdir <Verzeichnis vorher> <nachher> • Umbenennen von Dateien/Verzeichnissen • bk rm <Datei> • Löschen von Dateien/Verzeichnissen
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