Login
Newsletter
Werbung

Di, 17. April 2018, 12:14

Software::Entwicklung

Subversion 1.10 veröffentlicht

Das Versionsverwaltungssystem Subversion liegt jetzt in Version 1.10 vor. Die neue Version bringt einen neuen interaktiven Konfliktauflöser, Unterstützung für die LZ4-Kompression und weitere Verbesserungen.

Mirko Lindner

Das zentrale Versionsverwaltungssystem Subversion versteht sich selbst als eine »bessere Alternative« zu dem bereits sehr alten CVS. Es beseitigt viele der Mängel und führt neue Konzepte ein. CVS-Benutzern dürfte der Umstieg auf SVN wegen der Ähnlichkeiten recht leicht fallen. Das Repositorium liegt bei Subversion zentral. Zum Bearbeiten von Dateien muss man es komplett oder teilweise in ein Arbeitsverzeichnis auschecken. Ausgecheckte Dateien sind nicht gesperrt und können von mehreren Personen parallel bearbeitet werden. Etwaige Konflikte werden beim Einchecken der Änderungen erkannt und müssen dann manuell aufgelöst werden. Wie bei CVS sind bereits zahlreiche Tools entstanden, die Subversion unterstützen. Vor einigen Jahren hat CollabNet die Entwicklung von Subversion an die Apache Software Foundation übertragen.

Fast drei Jahre nach Subversion 1.9 haben die Entwickler jetzt die Version 1.10 veröffentlicht. Die neue Version bringt bei fast vollständiger Kompatibilität zur Vorversion zwar nur wenige neue Funktionen, jedoch auch zahlreiche interne Änderungen und Verbesserungen für Administratoren.

Es gibt vier größere Neuerungen in Subversion 1.10: Verbesserte pfadbasierte Autorisierung, ein neuer interaktiver Konfliktauflöser, Unterstützung für die LZ4-Kompression und in experimenteller Form das sogenannte »Shelving«. Die verbesserte pfadbasierte Autorisierung, die auch mit älteren Clients funktioniert, soll schneller sein als die frühere Implementierung und ermöglicht es nun, auch Wildcards in den Pfaden zu verwenden. Für jeden Pfad, den man definiert, lassen sich Zugriffsrechte vergeben. Anders als bisher ist es jetzt nicht mehr erlaubt, ausschließlich Schreibrechte zu gewähren.

Der neue interaktive Konfliktauflöser arbeitet auf der Client-Seite und funktioniert auch mit älteren Server-Versionen. Er findet strukturelle Änderungen im Repositorium, die mit lokalen Änderungen in Konflikt stehen, und gibt ausführliche Informationen dazu aus. Bisher war der Benutzer hierbei auf sich alleine gestellt. Der Konfliktauflöser schlägt auch Lösungsmöglichkeiten vor und führt sie aus, wenn der Benutzer es wünscht.

SVN 1.10 unterstützt die LZ4-Kompression als Alternative zur bereits vorhandenen zlib-Kompression. LZ4 ist deutlich schneller als zlib, was mit einer geringeren Kompression erkauft wird. LZ4 wird standardmäßig verwendet, wenn man auf dem SVN-Server das neue Dateiformat Version 8 einsetzt. Auch in der Kommunikation zwischen Server und Client wird es genutzt, wenn es beide Seiten beherrschen.

Die vierte neue Funktion, das sogenannte »Shelving«, ist eine neue Möglichkeit, Änderungen, die man noch nicht committen will, beiseite zu legen. Die neue Funktionalität entspricht ungefähr dem Erstellen und Abspeichern einer Patch-Datei mit svn diff und dem späteren erneuten Einspielen mit svn patch, ist aber noch als experimentell deklariert. Sie entspricht im Wesentlichen der Stash-Funktionalität in Git, die dort schon seit vielen Jahren, möglicherweise bereits seit dem Start des Werkzeugs im Jahr 2005, verfügbar ist.

Wie die Anmerkungen zur Veröffentlichung ausführen, kann eine Aktualisierung von Version 1.9 auf 1.10 sowohl auf Client- als auch auf Server-Seite durch einfaches Ersetzen der Programme geschehen. Optional ist eine Aktualisierung des Repo-Formats auf Version 8. Auch die weiteren Änderungen sind hier beschrieben. Noch etwas ausführlicher ist das Änderungslog der neuen Version. Der Download der Quellen von Subversion 1.10 ist von der Seite des Projektes möglich.

Werbung
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung