Tobias Wassermann Versionsmanagement mit Subversion Installation, Konfiguration, Administration
Einleitung 11 Teil I Einstieg in Subversion 13 i Subversion: Was ist das? 15 I.I Versionsmanagement: Rückblick 15 I.I.I Versionsmanagement: Wofür? 16 1.2 Subversion: Geschichte 22 1.3 Subversion: Architektur 23 1.4 Das kann Subversion nicht 25 1.5 Subversion versus»handarbeit«25 1.6 Subversion: Revisionen 27 1.6.1 Revisionsangaben 28 1.6.2 Peg- und operative Revisionen 29 1.7 Repositories 30 2 Installation 33 2.1 Vorbereitungen 33 2.1.1 Linux 33 2.1.2 Windows 37 2.2 Die Installation 38 2.2.1 Linux 38 2.2.2 Windows 40 3 Arbeitsablauf mit Subversion 43 3.1 Subversion und seine Programme 43 3.1.1 Hilfe! 43 3.2 Schnelleinstieg in der Praxis 44 3.2.1 Anlegen des Repositorys 44 3.2.2 Arbeiten mit Subversion: So geht's 47
4 Repositories - Speicher in Subversion 63 4.1 Aufbau eines Repositorys 63 4.1.1 Protokolle 65 4.1.2 Datenspeicher 67 4.2 Ein Repository verwalten 69 4.2.1 Repository anlegen 70 4.2.2 Repository konfigurieren 72 4.2.3 Konfiguration der BerkeleyDB 73 4.2.4 Sichern und Wiederherstellen von Repositories 74 4.2.5 Export und Import 82 4.2.6 Repository bereinigen 85 4.2.7 Sperren aufheben/repository wiederherstellen 88 4.2.8 Repositories mit svnserve bereitstellen 89 5 Arbeitskopien, Tags und Branches 93 5.1 Arbeitskopie auschecken 93 5.2 Arbeitskopie einchecken 94 5.3 Arbeitskopie aktualisieren 96 5.4 Arbeitskopie-Verwaltung:.svn 99 5.5 Kooperative Entwicklung in der Praxis 102 5.5.1 Konflikte 103 5.5.2 Zusammenfuhrung: Merge 105 5.6 Branches 108 5.6.1 Branch erzeugen 110 5.6.2 Arbeitskopien umschalten 112 5.6.3 Ist ein Zweig nur eine Kopie? 115 5.7 Tags - feststehende Versionen 117 6 Verzeichnisse und Dateien 119 6.1 Import von Verzeichnissen und Dateien 119 6.2 Dateien hinzufügen 120 6.3 Verzeichnisse anlegen 121 6.4 Dateien löschen 122 6.5 Dateien kopieren 124 6.6 Dateien verschieben 125 6.7 Dateien auflisten 126 6.8 Dateien ausgeben 127 6.9 Dateistatus einsehen 128
6.10 Abhängigkeiten von anderen Repositories und Fremddaten 130 6.10.1 Externais: Verlinkungen 130 6.10.2 Vendor Branches: Externe Daten ohne Repository 133 7 GUIs für Subversion 137 7.1 Pro und Contra 137 7.2 Übersicht 138 7.3 TortoiseSVN 139 7.3.1 Installation 140 7.3.2 Bedienung 141 7.4 RapidSVN 157 7.4.1 Installation 157 7.4.2 Bedienung 158 7.5 SubCommander 168 7.5.1 Installation 169 7.5.2 Bedienung 169 7.6 Subclipse (Eclipse) 184 7.6.1 Installation 185 7.6.2 Bedienung 185 7.7 AnkhSVN (Visual Studio IDE) 196 7.7.1 Installation 197 7.7.2 Bedienung 198 7.8 WebSVN (Serverfrontend) 204 7.8.1 Installation 205 7.8.2 Bedienung 206 Teil II Subversion für Fortgeschrittene und Umsteiger 207 8 Subversion als Server 209 8.1 Subversion und Apache 209 8.1.1 Konfiguration 210 8.1.2 XSLT-Stylesheets 213 8.1.3 Authentifizierung 214 8.1.4 HTTPS - Übertragungsverschlüsselung 222 8.2 Subversion und svnserve 229 8.2.1 Grundkonfiguration 229 8.2.2 Start 231 8.3 Subversion und mehrere Zugriffsmethoden 241 7
i 9 Repository-Administration 243 9.1 Repository-Administration mit svnadmin 243 9.1.1 Repository anlegen 243 9.1.2 Repository sichern und wiederherstellen 244 9.1.3 Repository überprüfen, restaurieren und bereinigen 253 9.1.4 Repository spiegeln 257 9.2 Scripting mit Hooks 258 9.2.1 Pre-lock 262 9.2.2 Pre-unlock 264 9.2.3 Post-commit 266 10 Client-Features 269 10.1 Arbeitskopie wechseln 269 10.2 Client-Konfiguration: Runtime Area Configuration 271 10.2.1 Konfigurationsdateien 271 10.3 Dateien analysieren 283 10.3.1 Das Revisionsprotokoll 283 10.3.2 Zeilenweise Analyse 287 10.3.3 Diff- Anzeige der Unterschiede 288 10.4 Client ohne Server 293 10.5 Daten exportieren 294 11 Properties: Eigenschaften 297 n.i Was sind Properties? 297 u,2 Eigenschaften bearbeiten 298 11.2.1 Kommandozeilenclient svn-^.. 298 n.2.2 svnlook 303 11.3 Besondere Properties 305 12 Subversion für Umsteiger 307 12.1 Subversion für VSS-Benutzer 307 12.2 Subversion für CVS-Benutzer 311
Teil III Referenz 331 13 Referenz 333 13.1 Der Subversion-Kommandozeilenclient: svn 334 13.1.1 svn-schalter 334 13.1.2 svn-unterbefehle 340 13.2 svnadmin 384 13.2.1 svnadmin-schalter 384 13.2.2 svnadmin-unterbefehle 386 13.3 svndumpfüter 393 13.3.1 svndumpfilter-schalter 393 13.3.2 svndumpfilter-unterbefehle 394 13.3.3 svnlook 396 13.3.4 svnlook-schalter 396 13.3.5 svnlook-unterbefehle 397 13.4 svnserve 405 13.4.1 svnserve-schalter 405 13.5 svnsync 407 13.5.1 svnsync-schalter 408 13.5.2 svnsync-unterbefehle 409 13.6 mod_dav_svn 410 13.6.1 Direktiven 411 13.7 Vordefinierte Properties 416 13.7.1 Versionierte Eigenschaften 416 13.7.2 Nicht-versionierte Eigenschaften (Revisionseigenschaften). 422 Stichwortverzeichnis 425