Das Buch
Kaufen…
… beim Verlag
… bei Amazon
… als E-Book
Über Subversion
Subversion ist ein modernes System zum Versionsmanagement von Sourcecode und anderen Dokumenten. Dieser Internetauftritt begleitet ein Buch, das bei Galileo Computing zu diesem Thema erschienen ist.
Links zu Subversion
Subversion Homepage
Die Heimat von Subversion im Internet befindet sich auf http://subversion.tigris.org. Hier gibt es die neuesten Versionen von Subversion zum Download. Weiterhin findet man viele Links zu anderen Subversion-Clients, Plugins, Konvertern und mehr.
Subversion Mailinglisten
Eine hervorragende Quelle, um unmittelbar die Weiterentwicklung von Subversion zu verfolgen oder sie gar mit zu gestalten, sind die Mailinglisten zum Thema. Alle Mailinglisten, die direkt Subversion (und nicht eine anderes Client-Programm wie TortoiseSVN) zum Thema haben, lassen sich unter der folgen-den Adresse finden: http://subversion.tigris.org/servlets/ProjectMailingListList.
Das Subversion-Repository
Subversion ist ein Open Source Projekt, das sich – natürlich – in einem eigenen Repository verwaltet! Anonymer lesender Zugriff ist für jedermann möglich: http://svn.collab.net/repos/svn.
Subversion FAQ
Die häufig gefragten Fragen und die passenden Antworten dazu kann man direkt aus dem Subversion-Repository abrufen.
TortoiseSVN
Der wohl populärste Client für Subversion auf Windows ist das Programm TortoiseSVN. Dieses auf http://tortoisesvn.tigris.org erhältliche Programm ist eine Erweiterung des Windows-Explorers und einfach zu bedienen.
Subclipse
Subclipse ist ein Subversion-Plugin für die populäre Java-Entwicklungsumgebung Eclipse. Das Plugin integriert sich nahtlos in die Versionsverwaltung von Eclipse. Damit sind Subversion-Repositories von Eclipse aus genau so einfach ansprechbar wie CVS-Repositories. Man findet das Projekt auf http://subclipse.tigris.org.
AnkhSVN
AnkhSVN ist ein Subversion-Plugin für die Microsoft-Entwicklungsumgebung Visual Studio .NET. Damit lässt sich Subversion auch aus dieser populären Entwicklungsumgebung heraus ansprechen: http://ankhsvn.tigris.org.
RapidSVN
RapidSVN ist ein GUI-Client für Windows und Linux. Man findet das Programm unter http://rapidsvn.tigris.org.
ViewCVS
ViewCVS ist ein Web-Frontend zu CVS. Seit der Version 1.0 kann es auch Subversion-Repositories darstellen. Das Programm findet man bei Sourceforge: http://viewcvs.sourceforge.net. Leider ist die Version 1.0 noch nicht offiziell erschienen. Daher muss man sich die Version 1.0-dev mit Subversion-Unterstützung aus dem CVS-Repository auschecken.
WebSVN
WebSVN ist ein Web-Frontend, das eigens für Subversion entwickelt worden ist. Im Gegensatz zu ViewCVS muss WebSVN daher keine Kompromisse bezüglich der Darstellung machen. Das Programm findet man unter http://websvn.tigris.org.
Trac
Trac ist ein System aus Subversion-Web-Frontend, Ticket-System und Wiki. Es ist in der Programmiersprache Python verfasst und setzt auf den Subversion SWIG-Bindings auf. Zum Betrieb wird zusätzlich eine relationale Datenbank benötigt (PostgreSQL oder SQLite). Man findet Trac unter http://projects.edgewall.com/trac.
cvs2svn
cvs2svn ist ein Python-Skript, das zur einmaligen Konvertierung eines CVS-Repositories in ein Subversion-Repository gedacht ist. Dabei können auch alle Tags und Verzweigungen konvertiert werden. Das Skript gibt es zum Download unter http://cvs2svn.tigris.org.
Polarion
Auf http://www.polarion.org bietet die gleichnamige deutsche Firma Tools und Programme zu Subversion an. Dazu gehören u.a. ein Repository-Konverter von ClearCase, MKS, VSS, PVCS und CVS, ein alternatives Eclipse-Plugin und ein Java-basierter Web-Client.
Apache Portable Runtime
Subversion wird plattformunabhängig entwickelt. Die dafür notwendige Abstraktion wird durch die Verwendung der Apache Portable Runtime erreicht. Diese Bibliothek liegt auch dem Apache Webserver zugrunde: http://apr.apache.org.
Apache 2 Webserver
Der Apache Webserver in der Version 2 ist die Grundlage für die Verwendung der Protokolle HTTP und HTTPS. Nur in Zusammenarbeit mit Apache lässt sich zudem eine fortgeschrittene Authentifizierung und Autorisierung realisieren. Den Webserver und die dazugehörige Dokumentation gibt es unter http://httpd.apache.org.
SWIG
Zur Implementierung seiner Programmierschnittstellen (APIs) verwendet Subversion verschiedene Ansätze. So wird unter anderem auch der Simplified Wrapper and Interface Generator, SWIG, unterstützt: http://www.swig.org.
Berkeley DB
Subversion kann seit der Version 1.1 Repositories wahlweise im Dateisystem oder in einer Datenbank ablegen. Alle älteren Versionen von Subversion legen Repositories immer in einer Datenbank ab. Die für Repositories verwendete Datenbank heißt Berkeley DB. Nähere Informationen zu dieser Datenbank gibt es auf der Webseite des Herstellers.
OpenSSH für Windows
Wer Subversion von Windows aus über SVN+SSH verwenden möchte, braucht ein SSH-Programm. Zum Tunneln von Windows aus kann die OpenSSH-Implementierung für Windows verwendet werden: http://sshwindows.sourceforge.net.
WebDAV
Subversion verwendet in Zusammenarbeit mit dem Apache 2 Webserver das WebDAV-Protokoll, um Daten zwischen Client-Programm und Server auszutauschen. Mehr Informationen zu diesem Protokoll gibt es unter http://www.webdav.org.