Subversion will die Nachfolge von cvs als Versionskontrollsystem antreten.
Homepage: http://subversion.tigris.org/
Lizenz: http://www.apache.org/LICENSE.txt
Außerdem gibt es eine /KommandoReferenz.
Die aktuelle Version ist 1.4.6
Vergleich mit CVS
CVS funktioniert zwar relativ gut, aber es kommt langsam in die Jahre. Was zeichnet SubVersion gegenüber CVS aus?
Saubere Verwaltung von Tags und Branches. Das Anlegen von Tags (Markierungen eines Versionsstandes) benötigt immer die gleiche Zeit, egal wie groß das Projekt ist. Die Verwaltung ist wesentlich weniger "hirntot" als bei CVS.
Neues Netzwerk-Protokoll. Multi-User Subversion verwendet ein WebDAV-basierendes Protokoll, wahlweise auch mit SSL. Praktische Konsequenz: Man kann mit einem Browser (HTTP) oder einem WebDAV-Client ("Webordner" in Windows) lesend oder auch schreibend auf das Repository zugreifen. Die Realisierung des Protokolls erfolgt mit einem Modul für Apache 2.
Versionierung von Verzeichnissen, Kopien und Renames. Dieses Feature wird bei CVS oft vermisst. Es ist also z.B. möglich, eine Datei ohne Tricks umzubenennen.
Commits sind atomar. Das bedeutet, dass kein Teil eines Schreibzugriffs wirksam wird, bevor der Vorgang ganz abgeschlossen ist. Die "Log Messages" sowie die Revisionsnummern werden einmal pro Commit, nicht einmal pro Datei, gespeichert.
Effiziente Handhabung von Binärdateien. SubVersion kann auch Diffs für Binärdateien speichern -- ohne dass man spezielle Maßnahmen treffen muss.
Darüber hinaus ist die Syntax der SubVersion-Kommandos weitgehend identisch mit ihrem CVS-Gegenstück.
GUI-Clients
JSVN Java Subversion Client
rapidsvn (Linux and Windows)
esvn QT-SVN Client (Linux, Windows, BSD, MacOSX, Solaris)
Tortoise SVN (Windows)
kdesvn (Linux, Unix, *BSD/KDE)
QSvn (Linux, Unix, *BSD/KDE, Mac OS X, Windows)
Subversion Utilities
ViewVC Web Interface (ehemals ViewCVS)
trac Integiertes Projekt und SourceCode Management über ein Web Inerface
Tipps & Tricks
Eine Anleitung zur Installation eines Subversion Servers mit Nutzerauthentifizierung unter Debian-Sid findet sich in der deutschen Übersetzung der Debian Referenz.
Auf MacOSX darf man Subversion auf keinen Fall mit DB4.0.x verwenden, sondern muss mindestens Version 4.1.x installieren. Ansonsten kann es aufgrund von Threading-Problemen zu Datenverlust und defekten Repositories kommen!
Mini-Howto
Das Magazin Linux Enterprise hat einen Online Artikel zu Subversion ins Netz gestellt.
Dann gibt es noch zwei -- englische -- Mini-HOWTOs zu SubVersion:
und ein OpenBook, welches Ende des Jahres bei O'Reilly erscheinen soll:
Außerdem gibt es eine sehr ausführliche deutsche Schritt-für-Schritt Anleitung zur Subversion Installation unter Linux und Solaris:
Subversion Installation unter Linux oder Solaris
hierzu in automatischer Form als Perl Skript svn-install.pl (in Anlehnung an diese Anleitung) (sehr praktisch für ein Update)
Hier gibt es ein Startskript für svn . Einfach in /etc/init.d kopieren und in den gewüschten Runleveln verlinken.
Frage: Gibt es einen oeffentlichen Hoster fuer subversion Repositories? Sowas wie Sourceforge aber halt mit svn statt cvs?
Bei http://www.cvsdude.org/ kann man neuerdings zwischen CVS und SubVersion wählen. Allerdings ist hier jedes Projekt separat und anonym voneinander getrennt, nicht so wie bei SF. -- AaronMueller 2004-08-21 17:14:28
- Hab' mich da mal angemeldet und es klappt auch alles soweit, allerdings sind die kostenlosen Accounts doch recht eingeschraenkt. Man kann zwei Logins einrichten, aber beide haben vollen Zugriff auf das Repository. Readonly Zugriff oder feinere Rechtezuweisung geht nur bei den kostenpflichtigen Accounts, und die kosten monatlich gleich richtig Geld. Man bekommt zusaetzlich auch ein Bug-Tracking- und Feature-Management System. -- twm
Bei http://developer.berlios.de geht SVN (über svn://) genauso wie bei http://alioth.debian.org.
- Hab' mich da mal angemeldet und es klappt auch alles soweit, allerdings sind die kostenlosen Accounts doch recht eingeschraenkt. Man kann zwei Logins einrichten, aber beide haben vollen Zugriff auf das Repository. Readonly Zugriff oder feinere Rechtezuweisung geht nur bei den kostenpflichtigen Accounts, und die kosten monatlich gleich richtig Geld. Man bekommt zusaetzlich auch ein Bug-Tracking- und Feature-Management System. -- twm
Sourceforge bietet laut deren Doku ebenfalls subversion an: https://sourceforge.net/docman/display_doc.php?docid=31070&group_id=1
syncom.org bietet kostenloses svn für Projekte an (auch Closed Groups erlaubt)
Im O'Reilly MacDevCenter gibt es einen netten Artikel, der auch für Linux-User interessant sein dürfte: Making the Jump to Subversion,