Menü
Ein Beitrag von Adacor

Versionskontrolle: Migration von Subversion zu Git

Lange Zeit nutzte die ADACOR zur Versionskontrolle Apache Subversion (SVN), jetzt sind wir auf Git mit der Verwaltungsoberfläche GitLab umgestiegen.

Warum der Wechsel notwendig wurde, erläutere ich in meinem Beitrag.

Wir Softwareentwickler der ADACOR nutzen das Versionskontrollsystem zur Verwaltung des intern entwickelten Software-Source-Codes. Mithilfe des Programms werden sämtliche Versionen archiviert, mit einem Zeitstempel versehen und per Benutzerkennung gesichert. Damit können alle Quellcodedateien im Nachhinein zu jedem beliebigen Zeitpunkt wiederhergestellt werden.

Die Softwareentwicklung nutzte vor der Migration zu Git für alle internen und externen Projekte Subversion (SVN) zur Versionskontrolle. Mit steigender Mitarbeiter- und Projektzahl offenbarte die freie Software jedoch erhebliche Nachtteile.

Image

Managing your Cloud Transformation

Exolink bietet Ihnen eine hochkarätige Expertise in den Bereichen Hyperscaling und Public Cloud.

Wir konzipieren, entwickeln und betreiben Lösungen auf Amazon Web Services, Microsoft Azure und Google Cloud Platform.

Jetzt informieren!

Nachteile von Subversion

  • Der Überblick über die Projekte und die Zugriffsberechtigungen der einzelnen Mitarbeiter ging leicht verloren.
  • Das Merging, also das Zusammenführen von zwei Revisionen (Versionen), missglückte des Öfteren. Infolgedessen dauerten die gemeinsamen Merging-Sessions länger als geplant.
  • Ungünstig war das Arbeiten mit mehr als vier Personen an einem Projekt.
  • Feature-Branches, der Ablauf der Funktionsentwicklung in verschiedenen Zweigen, sind zwar mit SVN möglich, die Darstellung wird jedoch schnell unübersichtlich und die einzelnen Branches entfernen sich immer mehr voneinander.

Welche Alternativen gibt es zu SVN?

Um die genannten Nachteile zu beseitigen, evaluierte das Entwicklungsteam mehrere Softwarealternativen für die Versionsverwaltung der Quellcodes(z. B. Mercurial, Bazaar und Git). Schnell zeichnete sich ab, dass sich Git am besten für die Ansprüche der ADACOR eignete. So überzeugten die zentralen Git-Management-Systeme im Hinblick auf „Sicherheit“, „Verlässlichkeit“, „Rechtemanagement“, „Komfort“ und „Features“. Ein weiterer Vorteil war, dass sich die dezentrale Lösung unverändert in die integrierte Entwicklungsumgebung „PHPStorm“ integrieren ließ.

Git und GitLab waren die besten

Git ist ein hoch performantes, verteiltes, dezentrales Versionsverwaltungssystem, dass sich in einigen Eigenschaften von den traditionellen Systemen abhebt.

Vorteile von Git und GitLab

  • Sowohl das Erstellen neuer Entwicklungszweige als auch das Merging von Branches sind integraler Bestandteil von Git.
  • Git sieht keinen zentralen Server vor. Die Entwickler können die Merges (verschmolzenen Versionen) bzw. die Commits (bestätigte Freischaltung einer Änderung) untereinander austauschen.
  • Git ist weniger speicherintensiv als SVN oder andere Systeme. Deshalb kann jeder Entwickler problemlos alle Versionen bzw. Commits lokal vorhalten.

Als zentrales System für die Git-Verwaltung wählten die Entwickler GitLab, welches sowohl optisch als auch technisch dem öffentlichen System GitHub.com entspricht.
Für GitLab sprach zudem, dass einige von uns Entwicklern bereits Erfahrungen mit dem Tool gesammelt hatten. GitLab unterstützt die Erstellung und Verwaltung der gesamten Repositorys. Ähnlich wie bei GitHub kann dabei auch der veränderte Quellcode angezeigt werden. Eine Syntaxhervorhebung, Unterschiede zwischen den einzelnen Commits sowie die Darstellungen der Branches sind nur einige Features, welche die Arbeit mit Git zusätzlich erleichtern.

Migration und erste Erfahrungen

Mithilfe der vorhandenen Tools können die SVN-Repositorys inklusive der History in ein Git-Repository migriert werden. Dank einfachster Schritt-für-Schritt-Setupanleitung für jedes neu angelegte Respository, gehen die ersten Anwendungsversuche auch für Git-Neulinge leicht von der Hand. Die Einteilung der Projekte nach Kunde und Entwicklungsteam sowie die Rechtevergabe sind ebenfalls mit wenigen Klicks erledigt. Bis auf die Tatsache, dass man neben den bekannten Befehlen „Commit“ und „Update“, zwei neue Kommandos „Push“ und „Pull“ kennen muss, laufen die meisten Schritte in PHPStorm genauso wie in Subversion ab. Nur übersichtlicher und schneller. Der Wechsel zwischen verschiedenen Branches funktioniert mit einem Klick innerhalb von Sekunden.
Das Mergen bzw. Zusammenführen von Entwicklungszweigen in den Master (Hauptzweig), geschieht nach Erstellen eines Merge-Requests und dem Code-Review eines anderen Entwicklers, direkt in der Weboberfläche von GitLab. Der Vorgang funktioniert in 99 % der Fälle vollautomatisch. Für den Umgang mit dem einen Prozent, das meistens durch Konflikte hervorgerufen wird, gibt es eine detaillierte Schritt-für-Schritt-Anleitung direkt in der GitLab-Oberfläche.

Image

Datenschutz ist Chefsache

Kennen Sie schon alle Aspekte zur EU-DSGVO?
Der Bericht in der aktuellen Ausgabe unseres Magazins unterstützt Sie bei der Beantwortung dieser und weiterer brennender Fragen.

Magazin jetzt kostenlos downloaden

Verbesserte Prozesse beschleunigen die Entwicklung

Die Umstellung des Versionskontrollsystems zur Verwaltung der Software-Source-Codes von Subversion auf Git/GitLab hat sich für die ADACOR gelohnt. Alle Entwickler haben sich innerhalb kürzester Zeit eingearbeitet und die vorhandenen Arbeitsabläufe funktionieren besser als vorher. Besonders die Code-Reviews durch einen anderen Entwickler sowie das gezielte Merging einzelner Features ist durch die GitLab-Oberfläche massiv vereinfacht und beschleunigt worden. Alle Projekte sind mittlerweile migriert und fast alle sind zusätzlich an einen zentralen, auf Jenkins aufbauenden Build-Server angeschlossen. Dieser ist für die Ausführung von automatisierten Tests (hauptsächlich PHPUnit und Selenium) und das Deployen (Livegang) von neuen Versionen zuständig.

Hat Ihnen der Beitrag gefallen? Dann teilen Sie ihn doch einfach durch Klicken auf einen der hier unten angezeigten Buttons bei Facebook, Google Plus oder Twitter.

, , , , , , , , , , , ,

Die besten IT-News per E-Mail

Immer als Erster über brandaktuelle IT-Themen informiert sein!


Weitere Artikel zum Thema lesen

Wie funktioniert M2M-Kommunikation?

IT-News

Wie funktioniert M2M-Kommunikation?

Die M2M-Technologie verbindet moderne Informations- und Kommunikationstechnik miteinander. Mittels M2M kommunizieren Endgeräte mit einer zentralen Schaltstelle. M2M-Kommunikation besteht aus drei Grundkomponenten Dem Datenendpunkt (Data...

weiter lesen

Datensicherheit stärken durch Cloud Hosting in Deutschland

Biz & Trends, Cloud, Hosting

Datensicherheit stärken durch Cloud Hosting in Deutschland

PRISM und die NSA sind angesichts des jüngsten amerikanischen Spionageskandals in aller Munde und viele Unternehmen fragen sich, wie sicher ihre Daten in der...

weiter lesen

Entwicklungsgeschichte der Netzwerk-Infrastruktur von Google

IT-News

Entwicklungsgeschichte der Netzwerk-Infrastruktur von Google

Rückschau auf fünf Generationen Netzwerk-Infrastrukturen.

weiter lesen


Neueste Nachrichten von Adacor

Biz & Trends

UN Global Compact: Adacor jetzt Participant-Mitglied

Im UN Global Compact wird eine gerechtere Ausgestaltung der Globalisierung umgesetzt. Die Adacor Group setzt sich im Rahmen ihrer Participant-Mitgliedschaft aktiv ein.

weiter lesen

Cloud

Jira & Confluence von Atlassian optimal nutzen

Die agile Zusammenarbeit mit Jira, Confluence, Bitbucket und Hipchat noch besser digital organisieren? Durch Application Hosting mehr Vorteile aus den Atlassian-Tools ziehen.

weiter lesen

Cloud

Wie Serverless Infrastructures mit Microservices zusammenspielen

Serverless Infrastructures erleichtern die Arbeit von Backend-Entwicklern. Microservices sind elementare Bestandteile der serverlosen Datenverarbeitung. Wir erklären wie sie sich optimal in bestehende Workflows implementieren...

weiter lesen

Diese Website verwendet Cookies. Mit der weiteren Nutzung der Website stimmen Sie unserer Datenschutzerklärung zu.
Für weitere Informationen klicken Sie bitte hier.