Für professionelle Software-Entwickler stellt eine funktionierende Versionsverwaltung ein essentielles Werkzeug für ihre Tätigkeit dar. Die dafür eingesetzte Software stellt dabei sicher, dass jede im System gehaltene Version eines Programmmoduls wieder hergestellt werden kann.
Zu diesem Zweck wird der Quellcode zusammen mit seinen Metadaten in einer Datenbank, dem sogenannten Repository gehalten.
Gerade für die Softwareentwicklung im Team ist es notwendig, dass die Änderungen an den einzelnen Modulen konsistent erfolgt, d.h. eine Bearbeitung des gleichen Programmcodes durch verschiedene Teammitglieder muss von der Versionsverwaltung verhindert oder zumindest verwaltet werden. Zu diesem Zweck wird üblicherweise der Programmcode gegen weitere Schreibzugriffe gesperrt, wenn er zum Bearbeiten von einem der Teammember gesperrt wurde.
Die Versionierungssoftware liegt üblicherweise auf einem der Fileserver im lokalen Netz, auf die das Entwicklungsteam Zugriff hat. Dabei kommen üblicherweise System wie Apache Subversion (SVN) oder Git zum Einsatz, die als freie Software erhältlich sind und von jedermann verwendet werden können. In einer Welt zunehmender Mobilität wird es jedoch immer wichtiger, auch außerhalb des lokalen Netzes Zugriff auf den aktuellen Entwicklungscode zu bekommen.
Hier bietet es sich nun an, auf einen Dienstleister zurückzugreifen, der Subversion im Internet als SaaS (Software as a Service) zu Verfügung stellt. Durch das Subversion Hosting ist es allen Teammitgliedern möglich, mit jedem Internetzugang auf das Repository zuzugreifen. Die meisten Anbieter bieten für ihre Dienste verschiedene Preismodelle an. Diese unterscheiden sich außer bei den Kosten auch durch den zur Verfügung stehenden Speicherplatz, die maximal Mögliche Anzahl der Dateien oder die Zahl der Teammitglieder.
Je nach Anbieter kann auch der durch SVN verursacht Datenverkehr (Traffic) limitert sein. Manche Hosting-Provider bieten zusätzliche Features bei der Benutzerverwaltung oder eine grafische Aufbereitung des Versionsbaumes an.
Eine wichtige Funktion der Dienstleister ist auch das regelmäßige Backup des SVN-Repositories sowie das Einspielen der Sicherheitsupdates von Subversion. Für alle diese Tätigkeiten müssen die Software-Entwickler kein eigenes Personal zur Verfügung stellen, sondern erhalten diese Leistung im Subversion-Hosting Paket.
Manche Anbieter bieten Subversion Hosting auch als werbefinanziertes, für den Anwender also kostenloses, Einstiegsangebot an. Häufig ist dann allerdings das Repository öffentlich, also von jedermann einsehbar. Für Anwendungen, die in einer Community beispielsweise als Open Source Software gepflegt werden, ist dies jedoch kein Nachteil. Allerdings sollte hier im Einzelfall darauf geachtet werden, dass der kostenlose Account nicht durch Begrenzungen bei der Zahl der Benutzer oder dem bereitgestellten Traffic für diesen Zweck ungeeignet ist.
Zusammenfassend betrachtet ist das Hosting von Versionsverwaltungssystemen wie Subversion oder Git bei einem Internet-Dienstleister ein Schritt, um die Software-Entwicklung ortsunabhängig zu machen. Die Teammitglieder können von überall auf der Welt auf die jeweils aktuellen Programmdateien zugreifen und diese bearbeiten. Ein eigener Server mit dem dafür notwendigen administrativen Aufwand ist dann nicht mehr notwendig. Bei der Auswahl eines geeigneten Anbieters ist es jedoch notwendig, die entsprechenden Parameter für das benötigte Paket zu kennen, um die verschiedenen SVN-Hosting Dienstleister vergleichen zu können.
Bild: Gerd Altmann / pixelio.de