Frank Budszuhn
Subversion: Einführung in das neue Versionsmanagement-System, Vergleich mit CVS (Galileo Computing)
Frank Budszuhn
Subversion: Einführung in das neue Versionsmanagement-System, Vergleich mit CVS (Galileo Computing)
- Buch
Produktdetails
- Verlag: Galileo Computing
- ISBN-13: 9783898426039
- ISBN-10: 3898426033
- Artikelnr.: 13010644
Frank Budszuhn ist Diplom-Informatiker und arbeitet seit zehn Jahren als Softwareentwickler. Seit 2002 entwickelt er in seiner eigenen Firma, der AlsterContor GmbH, Internetanwendungen im Kundenauftrag. Alle großen Entwicklungsprojekte hat er in dieser Zeit mit CVS oder Subversion verwaltet. Er ist Autor der Standardwerke 'Visual C++' (Addison-Wesley) und 'CVS' (Galileo Computing).
Teil 1 Eine Einführung in Subversion
1 Einleitung ... 17
... 1.1 Zielgruppe des Buchs ... 17
... 1.2 Die zugrunde liegende Version von Subversion ... 17
... 1.3 Aufbau des Buchs ... 18
... 1.4 Anforderungen an den Leser ... 19
... 1.5 Die verwendeten Betriebssysteme ... 19
... 1.6 Konventionen in diesem Buch ... 20
... 1.7 Wofür Versionsmanagement? ... 21
... 1.8 Entwickeln mit Versionsmanagement ... 24
2 Das Versionsmanagementsystem Subversion ... 27
... 2.1 Zur Geschichte von Subversion ... 27
... 2.2 Subversion im Kontext anderer Versionsmanagementsysteme ... 29
... 2.3 Clientprogramme für Subversion ... 30
... 2.4 Was Subversion nicht kann: Abgrenzung zu anderen Entwicklungswerkzeugen ... 32
... 2.5 Die Architektur von Subversion ... 33
... 2.6 Subversion und Open Source ... 34
3 Der Entwicklungsprozess mit Subversion ... 37
... 3.1 Modell des kooperativen Entwickelns ... 37
... 3.2 Betrachtungen zum ersten Kontakt ... 38
... 3.3 Der Entwicklungszyklus mit Subversion ... 38
... 3.4 Der Entwicklungszyklus in der Zusammenfassung ... 44
... 3.5 Der Entwicklungszyklus mit mehreren Entwicklern ... 49
... 3.6 Subversion und Kommunikation ... 50
... 3.7 Regeln im Umgang mit Subversion ... 50
... 3.8 Zusammenfassung ... 51
4 Installation ... 53
... 4.1 Installation unter Windows ... 53
... 4.2 Installation unter Debian Linux ... 58
... 4.3 Installation auf anderen Linux- und Unix-Systemen ... 58
... 4.4 Die Programme und Module von Subversion ... 59
... 4.5 Die Verbindung zum Repository herstellen ... 60
... 4.6 Zusammenfassung ... 61
5 Erste Schritte ... 63
... 5.1 Ein erster Test ... 63
... 5.2 Protokoll einer Beispielsitzung ... 67
... 5.3 Zusammenfassung ... 73
6 Der Entwicklungsprozess im Detail ... 75
... 6.1 Revisionen ... 75
... 6.2 Arbeitsweisen von Subversion-Befehlen ... 78
... 6.3 Repository Layout ... 79
... 6.4 Der Repository-Browser ... 81
... 6.5 Die eingebauten Hilfefunktionen von Subversion ... 82
... 6.6 Implizite Argumente und Rekursion ... 84
... 6.7 Ein neues Projekt beginnen: import ... 85
... 6.8 Eine lokale Arbeitskopie anlegen: checkout ... 88
... 6.9 Eine lokale Arbeitskopie aktualisieren: update ... 91
... 6.10 Änderungen in das Repository übernehmen: commit ... 96
... 6.11 Unterschiede zwischen lokaler Arbeitskopie und Repository bestimmen: diff ... 98
... 6.12 Den Zustand der Arbeitskopie abfragen: status ... 100
... 6.13 Die Historie von Dateien und Verzeichnissen verfolgen: log ... 103
... 6.14 Dateien und Verzeichnisse auflisten: list ... 106
... 6.15 Dateien anzeigen: cat ... 108
... 6.16 Dateien und Verzeichnisse hinzufügen: add ... 109
... 6.17 Dateien und Verzeichnisse löschen: delete ... 111
... 6.18 Dateien und Verzeichnisse kopieren: copy ... 112
... 6.19 Dateien und Verzeichnisse verschieben und umbenennen: move ... 114
... 6.20 Verzeichnisse unter Versionskontrolle anlegen: mkdir ... 115
... 6.21 Lokale Änderungen zurücknehmen: revert ... 116
... 6.22 Einen Versionsstand aufbewahren ... 117
... 6.23 Die Arbeit mit Verzweigungen ... 120
... 6.24 Änderungen rückgängig machen ... 132
... 6.25 Gelöschte Dateien und Verzeichnisse wiederherstellen ... 133
... 6.26 Sperren entfernen: cleanup ... 134
... 6.27 Zusammenfassung ... 135
7 Fortgeschrittene Themen ... 137
... 7.1 Befehle abkürzen ... 137
... 7.2 Lokale Arbeitskopien "umschalten": switch ... 138
... 7.3 Die .svn-Verzeichnisse in der lokalen Arbeitskopie ... 140
... 7.4 Sourcecode exportieren ... 141
... 7.5 Die Umgebungsvariable SVN_EDITOR ... 143
... 7.6 Die lokale Konfiguration des Subversion-Clients ... 144
... 7.7 Die Sprache der Subversion-Programme umschalten ... 150
... 7.8 Dateien zeilenweise analysieren: blame ... 150
... 7.9 Erweiterte Informationen anzeigen: info ... 152
... 7.10 Properties ... 153
... 7.11 Symbolische Links unter Unix ... 165
... 7.12 Externals ... 165
... 7.13 Vendor Branches ... 167
... 7.14 Datums- und Zeitangaben in Subversion ... 170
... 7.15 XML, HTML und Subversion ... 171
... 7.16 Webseiten mit Subversion verwalten ... 172
... 7.17 Webfrontends für Subversion ... 173
... 7.18 Schlüsselwortersetzung ... 177
... 7.19 Zusammenfassung ... 179
8 Die Administration von Subversion ... 181
... 8.1 Einen Subversion-Server aufsetzen ... 181
... 8.2 Die Installation von Subversion ... 183
... 8.3 Subversion selbst kompilieren ... 183
... 8.4 Konfiguration von Repositories ... 185
... 8.5 Wartung und Problembehebung ... 199
... 8.6 Hook-Skripte ... 203
... 8.7 Backup und Migration ... 209
... 8.8 Zusammenfassung ... 214
9 Subversion für CVS-Benutzer ... 215
... 9.1 Subversion und CVS sind sich grundsätzlich ähnlich ... 215
... 9.2 Lokale Arbeitskopien ... 216
... 9.3 Der Kommandozeilen-Client ... 217
... 9.4 Revisionsnummern ... 217
... 9.5 Versionsverwaltung für Verzeichnisse ... 218
... 9.6 Atomare Commits ... 219
... 9.7 Zugriffsverfahren ... 219
... 9.8 Tags und Verzweigungen ... 221
... 9.9 Behandlung binärer Dateien ... 223
... 9.10 Überwachtes Arbeiten ... 224
... 9.11 Schlüsselwortersetzung ... 224
... 9.12 Vendor Branches ... 225
... 9.13 Unterschiede in der Implementierung ... 225
... 9.14 Konvertierung bestehender Repositories ... 226
... 9.15 Zusammenfassung ... 231
10 Ausblick ... 233
Teil 2 Referenz
11 Subversion-Befehle ... 237
... 11.1 Befehlsaufbau ... 237
... 11.2 svn ... 238
... 11.3 svnadmin ... 282
... 11.4 svndumpfilter ... 292
... 11.5 svnlook ... 295
... 11.6 svnserve ... 305
... 11.7 svnversion ... 307
12 Referenz der lokalen Konfigurationsdateien ... 309
... 12.1 Die lokalen Konfigurationsverzeichnisse ... 309
... 12.2 Die Datei config ... 311
... 12.3 Die Datei servers ... 314
A Subversion ohne Server verwenden ... 317
... A.1 Der lokale Zugriff auf das Repository ... 317
... A.2 Die Beispieldateien installieren ... 318
B Ein Leitfaden für Projektleiter ... 321
C Glossar ... 325
D Link- und Literaturverzeichnis ... 331
... D.1 Internetlinks ... 331
... D.2 Bücher ... 333
... D.3 Mailinglisten ... 334
1 Einleitung ... 17
... 1.1 Zielgruppe des Buchs ... 17
... 1.2 Die zugrunde liegende Version von Subversion ... 17
... 1.3 Aufbau des Buchs ... 18
... 1.4 Anforderungen an den Leser ... 19
... 1.5 Die verwendeten Betriebssysteme ... 19
... 1.6 Konventionen in diesem Buch ... 20
... 1.7 Wofür Versionsmanagement? ... 21
... 1.8 Entwickeln mit Versionsmanagement ... 24
2 Das Versionsmanagementsystem Subversion ... 27
... 2.1 Zur Geschichte von Subversion ... 27
... 2.2 Subversion im Kontext anderer Versionsmanagementsysteme ... 29
... 2.3 Clientprogramme für Subversion ... 30
... 2.4 Was Subversion nicht kann: Abgrenzung zu anderen Entwicklungswerkzeugen ... 32
... 2.5 Die Architektur von Subversion ... 33
... 2.6 Subversion und Open Source ... 34
3 Der Entwicklungsprozess mit Subversion ... 37
... 3.1 Modell des kooperativen Entwickelns ... 37
... 3.2 Betrachtungen zum ersten Kontakt ... 38
... 3.3 Der Entwicklungszyklus mit Subversion ... 38
... 3.4 Der Entwicklungszyklus in der Zusammenfassung ... 44
... 3.5 Der Entwicklungszyklus mit mehreren Entwicklern ... 49
... 3.6 Subversion und Kommunikation ... 50
... 3.7 Regeln im Umgang mit Subversion ... 50
... 3.8 Zusammenfassung ... 51
4 Installation ... 53
... 4.1 Installation unter Windows ... 53
... 4.2 Installation unter Debian Linux ... 58
... 4.3 Installation auf anderen Linux- und Unix-Systemen ... 58
... 4.4 Die Programme und Module von Subversion ... 59
... 4.5 Die Verbindung zum Repository herstellen ... 60
... 4.6 Zusammenfassung ... 61
5 Erste Schritte ... 63
... 5.1 Ein erster Test ... 63
... 5.2 Protokoll einer Beispielsitzung ... 67
... 5.3 Zusammenfassung ... 73
6 Der Entwicklungsprozess im Detail ... 75
... 6.1 Revisionen ... 75
... 6.2 Arbeitsweisen von Subversion-Befehlen ... 78
... 6.3 Repository Layout ... 79
... 6.4 Der Repository-Browser ... 81
... 6.5 Die eingebauten Hilfefunktionen von Subversion ... 82
... 6.6 Implizite Argumente und Rekursion ... 84
... 6.7 Ein neues Projekt beginnen: import ... 85
... 6.8 Eine lokale Arbeitskopie anlegen: checkout ... 88
... 6.9 Eine lokale Arbeitskopie aktualisieren: update ... 91
... 6.10 Änderungen in das Repository übernehmen: commit ... 96
... 6.11 Unterschiede zwischen lokaler Arbeitskopie und Repository bestimmen: diff ... 98
... 6.12 Den Zustand der Arbeitskopie abfragen: status ... 100
... 6.13 Die Historie von Dateien und Verzeichnissen verfolgen: log ... 103
... 6.14 Dateien und Verzeichnisse auflisten: list ... 106
... 6.15 Dateien anzeigen: cat ... 108
... 6.16 Dateien und Verzeichnisse hinzufügen: add ... 109
... 6.17 Dateien und Verzeichnisse löschen: delete ... 111
... 6.18 Dateien und Verzeichnisse kopieren: copy ... 112
... 6.19 Dateien und Verzeichnisse verschieben und umbenennen: move ... 114
... 6.20 Verzeichnisse unter Versionskontrolle anlegen: mkdir ... 115
... 6.21 Lokale Änderungen zurücknehmen: revert ... 116
... 6.22 Einen Versionsstand aufbewahren ... 117
... 6.23 Die Arbeit mit Verzweigungen ... 120
... 6.24 Änderungen rückgängig machen ... 132
... 6.25 Gelöschte Dateien und Verzeichnisse wiederherstellen ... 133
... 6.26 Sperren entfernen: cleanup ... 134
... 6.27 Zusammenfassung ... 135
7 Fortgeschrittene Themen ... 137
... 7.1 Befehle abkürzen ... 137
... 7.2 Lokale Arbeitskopien "umschalten": switch ... 138
... 7.3 Die .svn-Verzeichnisse in der lokalen Arbeitskopie ... 140
... 7.4 Sourcecode exportieren ... 141
... 7.5 Die Umgebungsvariable SVN_EDITOR ... 143
... 7.6 Die lokale Konfiguration des Subversion-Clients ... 144
... 7.7 Die Sprache der Subversion-Programme umschalten ... 150
... 7.8 Dateien zeilenweise analysieren: blame ... 150
... 7.9 Erweiterte Informationen anzeigen: info ... 152
... 7.10 Properties ... 153
... 7.11 Symbolische Links unter Unix ... 165
... 7.12 Externals ... 165
... 7.13 Vendor Branches ... 167
... 7.14 Datums- und Zeitangaben in Subversion ... 170
... 7.15 XML, HTML und Subversion ... 171
... 7.16 Webseiten mit Subversion verwalten ... 172
... 7.17 Webfrontends für Subversion ... 173
... 7.18 Schlüsselwortersetzung ... 177
... 7.19 Zusammenfassung ... 179
8 Die Administration von Subversion ... 181
... 8.1 Einen Subversion-Server aufsetzen ... 181
... 8.2 Die Installation von Subversion ... 183
... 8.3 Subversion selbst kompilieren ... 183
... 8.4 Konfiguration von Repositories ... 185
... 8.5 Wartung und Problembehebung ... 199
... 8.6 Hook-Skripte ... 203
... 8.7 Backup und Migration ... 209
... 8.8 Zusammenfassung ... 214
9 Subversion für CVS-Benutzer ... 215
... 9.1 Subversion und CVS sind sich grundsätzlich ähnlich ... 215
... 9.2 Lokale Arbeitskopien ... 216
... 9.3 Der Kommandozeilen-Client ... 217
... 9.4 Revisionsnummern ... 217
... 9.5 Versionsverwaltung für Verzeichnisse ... 218
... 9.6 Atomare Commits ... 219
... 9.7 Zugriffsverfahren ... 219
... 9.8 Tags und Verzweigungen ... 221
... 9.9 Behandlung binärer Dateien ... 223
... 9.10 Überwachtes Arbeiten ... 224
... 9.11 Schlüsselwortersetzung ... 224
... 9.12 Vendor Branches ... 225
... 9.13 Unterschiede in der Implementierung ... 225
... 9.14 Konvertierung bestehender Repositories ... 226
... 9.15 Zusammenfassung ... 231
10 Ausblick ... 233
Teil 2 Referenz
11 Subversion-Befehle ... 237
... 11.1 Befehlsaufbau ... 237
... 11.2 svn ... 238
... 11.3 svnadmin ... 282
... 11.4 svndumpfilter ... 292
... 11.5 svnlook ... 295
... 11.6 svnserve ... 305
... 11.7 svnversion ... 307
12 Referenz der lokalen Konfigurationsdateien ... 309
... 12.1 Die lokalen Konfigurationsverzeichnisse ... 309
... 12.2 Die Datei config ... 311
... 12.3 Die Datei servers ... 314
A Subversion ohne Server verwenden ... 317
... A.1 Der lokale Zugriff auf das Repository ... 317
... A.2 Die Beispieldateien installieren ... 318
B Ein Leitfaden für Projektleiter ... 321
C Glossar ... 325
D Link- und Literaturverzeichnis ... 331
... D.1 Internetlinks ... 331
... D.2 Bücher ... 333
... D.3 Mailinglisten ... 334
Teil 1 Eine Einführung in Subversion
1 Einleitung ... 17
... 1.1 Zielgruppe des Buchs ... 17
... 1.2 Die zugrunde liegende Version von Subversion ... 17
... 1.3 Aufbau des Buchs ... 18
... 1.4 Anforderungen an den Leser ... 19
... 1.5 Die verwendeten Betriebssysteme ... 19
... 1.6 Konventionen in diesem Buch ... 20
... 1.7 Wofür Versionsmanagement? ... 21
... 1.8 Entwickeln mit Versionsmanagement ... 24
2 Das Versionsmanagementsystem Subversion ... 27
... 2.1 Zur Geschichte von Subversion ... 27
... 2.2 Subversion im Kontext anderer Versionsmanagementsysteme ... 29
... 2.3 Clientprogramme für Subversion ... 30
... 2.4 Was Subversion nicht kann: Abgrenzung zu anderen Entwicklungswerkzeugen ... 32
... 2.5 Die Architektur von Subversion ... 33
... 2.6 Subversion und Open Source ... 34
3 Der Entwicklungsprozess mit Subversion ... 37
... 3.1 Modell des kooperativen Entwickelns ... 37
... 3.2 Betrachtungen zum ersten Kontakt ... 38
... 3.3 Der Entwicklungszyklus mit Subversion ... 38
... 3.4 Der Entwicklungszyklus in der Zusammenfassung ... 44
... 3.5 Der Entwicklungszyklus mit mehreren Entwicklern ... 49
... 3.6 Subversion und Kommunikation ... 50
... 3.7 Regeln im Umgang mit Subversion ... 50
... 3.8 Zusammenfassung ... 51
4 Installation ... 53
... 4.1 Installation unter Windows ... 53
... 4.2 Installation unter Debian Linux ... 58
... 4.3 Installation auf anderen Linux- und Unix-Systemen ... 58
... 4.4 Die Programme und Module von Subversion ... 59
... 4.5 Die Verbindung zum Repository herstellen ... 60
... 4.6 Zusammenfassung ... 61
5 Erste Schritte ... 63
... 5.1 Ein erster Test ... 63
... 5.2 Protokoll einer Beispielsitzung ... 67
... 5.3 Zusammenfassung ... 73
6 Der Entwicklungsprozess im Detail ... 75
... 6.1 Revisionen ... 75
... 6.2 Arbeitsweisen von Subversion-Befehlen ... 78
... 6.3 Repository Layout ... 79
... 6.4 Der Repository-Browser ... 81
... 6.5 Die eingebauten Hilfefunktionen von Subversion ... 82
... 6.6 Implizite Argumente und Rekursion ... 84
... 6.7 Ein neues Projekt beginnen: import ... 85
... 6.8 Eine lokale Arbeitskopie anlegen: checkout ... 88
... 6.9 Eine lokale Arbeitskopie aktualisieren: update ... 91
... 6.10 Änderungen in das Repository übernehmen: commit ... 96
... 6.11 Unterschiede zwischen lokaler Arbeitskopie und Repository bestimmen: diff ... 98
... 6.12 Den Zustand der Arbeitskopie abfragen: status ... 100
... 6.13 Die Historie von Dateien und Verzeichnissen verfolgen: log ... 103
... 6.14 Dateien und Verzeichnisse auflisten: list ... 106
... 6.15 Dateien anzeigen: cat ... 108
... 6.16 Dateien und Verzeichnisse hinzufügen: add ... 109
... 6.17 Dateien und Verzeichnisse löschen: delete ... 111
... 6.18 Dateien und Verzeichnisse kopieren: copy ... 112
... 6.19 Dateien und Verzeichnisse verschieben und umbenennen: move ... 114
... 6.20 Verzeichnisse unter Versionskontrolle anlegen: mkdir ... 115
... 6.21 Lokale Änderungen zurücknehmen: revert ... 116
... 6.22 Einen Versionsstand aufbewahren ... 117
... 6.23 Die Arbeit mit Verzweigungen ... 120
... 6.24 Änderungen rückgängig machen ... 132
... 6.25 Gelöschte Dateien und Verzeichnisse wiederherstellen ... 133
... 6.26 Sperren entfernen: cleanup ... 134
... 6.27 Zusammenfassung ... 135
7 Fortgeschrittene Themen ... 137
... 7.1 Befehle abkürzen ... 137
... 7.2 Lokale Arbeitskopien "umschalten": switch ... 138
... 7.3 Die .svn-Verzeichnisse in der lokalen Arbeitskopie ... 140
... 7.4 Sourcecode exportieren ... 141
... 7.5 Die Umgebungsvariable SVN_EDITOR ... 143
... 7.6 Die lokale Konfiguration des Subversion-Clients ... 144
... 7.7 Die Sprache der Subversion-Programme umschalten ... 150
... 7.8 Dateien zeilenweise analysieren: blame ... 150
... 7.9 Erweiterte Informationen anzeigen: info ... 152
... 7.10 Properties ... 153
... 7.11 Symbolische Links unter Unix ... 165
... 7.12 Externals ... 165
... 7.13 Vendor Branches ... 167
... 7.14 Datums- und Zeitangaben in Subversion ... 170
... 7.15 XML, HTML und Subversion ... 171
... 7.16 Webseiten mit Subversion verwalten ... 172
... 7.17 Webfrontends für Subversion ... 173
... 7.18 Schlüsselwortersetzung ... 177
... 7.19 Zusammenfassung ... 179
8 Die Administration von Subversion ... 181
... 8.1 Einen Subversion-Server aufsetzen ... 181
... 8.2 Die Installation von Subversion ... 183
... 8.3 Subversion selbst kompilieren ... 183
... 8.4 Konfiguration von Repositories ... 185
... 8.5 Wartung und Problembehebung ... 199
... 8.6 Hook-Skripte ... 203
... 8.7 Backup und Migration ... 209
... 8.8 Zusammenfassung ... 214
9 Subversion für CVS-Benutzer ... 215
... 9.1 Subversion und CVS sind sich grundsätzlich ähnlich ... 215
... 9.2 Lokale Arbeitskopien ... 216
... 9.3 Der Kommandozeilen-Client ... 217
... 9.4 Revisionsnummern ... 217
... 9.5 Versionsverwaltung für Verzeichnisse ... 218
... 9.6 Atomare Commits ... 219
... 9.7 Zugriffsverfahren ... 219
... 9.8 Tags und Verzweigungen ... 221
... 9.9 Behandlung binärer Dateien ... 223
... 9.10 Überwachtes Arbeiten ... 224
... 9.11 Schlüsselwortersetzung ... 224
... 9.12 Vendor Branches ... 225
... 9.13 Unterschiede in der Implementierung ... 225
... 9.14 Konvertierung bestehender Repositories ... 226
... 9.15 Zusammenfassung ... 231
10 Ausblick ... 233
Teil 2 Referenz
11 Subversion-Befehle ... 237
... 11.1 Befehlsaufbau ... 237
... 11.2 svn ... 238
... 11.3 svnadmin ... 282
... 11.4 svndumpfilter ... 292
... 11.5 svnlook ... 295
... 11.6 svnserve ... 305
... 11.7 svnversion ... 307
12 Referenz der lokalen Konfigurationsdateien ... 309
... 12.1 Die lokalen Konfigurationsverzeichnisse ... 309
... 12.2 Die Datei config ... 311
... 12.3 Die Datei servers ... 314
A Subversion ohne Server verwenden ... 317
... A.1 Der lokale Zugriff auf das Repository ... 317
... A.2 Die Beispieldateien installieren ... 318
B Ein Leitfaden für Projektleiter ... 321
C Glossar ... 325
D Link- und Literaturverzeichnis ... 331
... D.1 Internetlinks ... 331
... D.2 Bücher ... 333
... D.3 Mailinglisten ... 334
1 Einleitung ... 17
... 1.1 Zielgruppe des Buchs ... 17
... 1.2 Die zugrunde liegende Version von Subversion ... 17
... 1.3 Aufbau des Buchs ... 18
... 1.4 Anforderungen an den Leser ... 19
... 1.5 Die verwendeten Betriebssysteme ... 19
... 1.6 Konventionen in diesem Buch ... 20
... 1.7 Wofür Versionsmanagement? ... 21
... 1.8 Entwickeln mit Versionsmanagement ... 24
2 Das Versionsmanagementsystem Subversion ... 27
... 2.1 Zur Geschichte von Subversion ... 27
... 2.2 Subversion im Kontext anderer Versionsmanagementsysteme ... 29
... 2.3 Clientprogramme für Subversion ... 30
... 2.4 Was Subversion nicht kann: Abgrenzung zu anderen Entwicklungswerkzeugen ... 32
... 2.5 Die Architektur von Subversion ... 33
... 2.6 Subversion und Open Source ... 34
3 Der Entwicklungsprozess mit Subversion ... 37
... 3.1 Modell des kooperativen Entwickelns ... 37
... 3.2 Betrachtungen zum ersten Kontakt ... 38
... 3.3 Der Entwicklungszyklus mit Subversion ... 38
... 3.4 Der Entwicklungszyklus in der Zusammenfassung ... 44
... 3.5 Der Entwicklungszyklus mit mehreren Entwicklern ... 49
... 3.6 Subversion und Kommunikation ... 50
... 3.7 Regeln im Umgang mit Subversion ... 50
... 3.8 Zusammenfassung ... 51
4 Installation ... 53
... 4.1 Installation unter Windows ... 53
... 4.2 Installation unter Debian Linux ... 58
... 4.3 Installation auf anderen Linux- und Unix-Systemen ... 58
... 4.4 Die Programme und Module von Subversion ... 59
... 4.5 Die Verbindung zum Repository herstellen ... 60
... 4.6 Zusammenfassung ... 61
5 Erste Schritte ... 63
... 5.1 Ein erster Test ... 63
... 5.2 Protokoll einer Beispielsitzung ... 67
... 5.3 Zusammenfassung ... 73
6 Der Entwicklungsprozess im Detail ... 75
... 6.1 Revisionen ... 75
... 6.2 Arbeitsweisen von Subversion-Befehlen ... 78
... 6.3 Repository Layout ... 79
... 6.4 Der Repository-Browser ... 81
... 6.5 Die eingebauten Hilfefunktionen von Subversion ... 82
... 6.6 Implizite Argumente und Rekursion ... 84
... 6.7 Ein neues Projekt beginnen: import ... 85
... 6.8 Eine lokale Arbeitskopie anlegen: checkout ... 88
... 6.9 Eine lokale Arbeitskopie aktualisieren: update ... 91
... 6.10 Änderungen in das Repository übernehmen: commit ... 96
... 6.11 Unterschiede zwischen lokaler Arbeitskopie und Repository bestimmen: diff ... 98
... 6.12 Den Zustand der Arbeitskopie abfragen: status ... 100
... 6.13 Die Historie von Dateien und Verzeichnissen verfolgen: log ... 103
... 6.14 Dateien und Verzeichnisse auflisten: list ... 106
... 6.15 Dateien anzeigen: cat ... 108
... 6.16 Dateien und Verzeichnisse hinzufügen: add ... 109
... 6.17 Dateien und Verzeichnisse löschen: delete ... 111
... 6.18 Dateien und Verzeichnisse kopieren: copy ... 112
... 6.19 Dateien und Verzeichnisse verschieben und umbenennen: move ... 114
... 6.20 Verzeichnisse unter Versionskontrolle anlegen: mkdir ... 115
... 6.21 Lokale Änderungen zurücknehmen: revert ... 116
... 6.22 Einen Versionsstand aufbewahren ... 117
... 6.23 Die Arbeit mit Verzweigungen ... 120
... 6.24 Änderungen rückgängig machen ... 132
... 6.25 Gelöschte Dateien und Verzeichnisse wiederherstellen ... 133
... 6.26 Sperren entfernen: cleanup ... 134
... 6.27 Zusammenfassung ... 135
7 Fortgeschrittene Themen ... 137
... 7.1 Befehle abkürzen ... 137
... 7.2 Lokale Arbeitskopien "umschalten": switch ... 138
... 7.3 Die .svn-Verzeichnisse in der lokalen Arbeitskopie ... 140
... 7.4 Sourcecode exportieren ... 141
... 7.5 Die Umgebungsvariable SVN_EDITOR ... 143
... 7.6 Die lokale Konfiguration des Subversion-Clients ... 144
... 7.7 Die Sprache der Subversion-Programme umschalten ... 150
... 7.8 Dateien zeilenweise analysieren: blame ... 150
... 7.9 Erweiterte Informationen anzeigen: info ... 152
... 7.10 Properties ... 153
... 7.11 Symbolische Links unter Unix ... 165
... 7.12 Externals ... 165
... 7.13 Vendor Branches ... 167
... 7.14 Datums- und Zeitangaben in Subversion ... 170
... 7.15 XML, HTML und Subversion ... 171
... 7.16 Webseiten mit Subversion verwalten ... 172
... 7.17 Webfrontends für Subversion ... 173
... 7.18 Schlüsselwortersetzung ... 177
... 7.19 Zusammenfassung ... 179
8 Die Administration von Subversion ... 181
... 8.1 Einen Subversion-Server aufsetzen ... 181
... 8.2 Die Installation von Subversion ... 183
... 8.3 Subversion selbst kompilieren ... 183
... 8.4 Konfiguration von Repositories ... 185
... 8.5 Wartung und Problembehebung ... 199
... 8.6 Hook-Skripte ... 203
... 8.7 Backup und Migration ... 209
... 8.8 Zusammenfassung ... 214
9 Subversion für CVS-Benutzer ... 215
... 9.1 Subversion und CVS sind sich grundsätzlich ähnlich ... 215
... 9.2 Lokale Arbeitskopien ... 216
... 9.3 Der Kommandozeilen-Client ... 217
... 9.4 Revisionsnummern ... 217
... 9.5 Versionsverwaltung für Verzeichnisse ... 218
... 9.6 Atomare Commits ... 219
... 9.7 Zugriffsverfahren ... 219
... 9.8 Tags und Verzweigungen ... 221
... 9.9 Behandlung binärer Dateien ... 223
... 9.10 Überwachtes Arbeiten ... 224
... 9.11 Schlüsselwortersetzung ... 224
... 9.12 Vendor Branches ... 225
... 9.13 Unterschiede in der Implementierung ... 225
... 9.14 Konvertierung bestehender Repositories ... 226
... 9.15 Zusammenfassung ... 231
10 Ausblick ... 233
Teil 2 Referenz
11 Subversion-Befehle ... 237
... 11.1 Befehlsaufbau ... 237
... 11.2 svn ... 238
... 11.3 svnadmin ... 282
... 11.4 svndumpfilter ... 292
... 11.5 svnlook ... 295
... 11.6 svnserve ... 305
... 11.7 svnversion ... 307
12 Referenz der lokalen Konfigurationsdateien ... 309
... 12.1 Die lokalen Konfigurationsverzeichnisse ... 309
... 12.2 Die Datei config ... 311
... 12.3 Die Datei servers ... 314
A Subversion ohne Server verwenden ... 317
... A.1 Der lokale Zugriff auf das Repository ... 317
... A.2 Die Beispieldateien installieren ... 318
B Ein Leitfaden für Projektleiter ... 321
C Glossar ... 325
D Link- und Literaturverzeichnis ... 331
... D.1 Internetlinks ... 331
... D.2 Bücher ... 333
... D.3 Mailinglisten ... 334