Tobias Günther im Countdown zur IPC Spring 2013

Lohnt ein Wechsel auf Git? [Interview]
Kommentare

Das Versionskontrollsystem Git ist bereits seit einiger Zeit in aller Munde. Zahllose namhafte OpenSource-Projekte wie jQuery, Ruby on Rails oder der Linux Kernel setzen schon seit einigen Jahren auf Git. Doch was macht das System denn so besonders? Und lohnt sich ein Wechsel von den altbewährten Tools wie Subversion oder CVS? Wir sprachen mit Tobias Günther, dem Geschäftsführer der fournova GmbH.

PHP Magazin: Vor einigen Jahren war Versionskontrolle für Software-Entwickler noch ein leidiges Pflichtthema. Git hat das eigentlich trockene Thema neu belebt und einen regelrechten Hype ausgelöst. Warum ist Git so populär geworden?

Tobias Günther: Git ist das erste Versionskontrollsystem, das nicht nur einfach Revisionen speichert, sondern vielmehr den Entwicklungsprozess verbessert. Es hilft dabei, sauberer und strukturierter zu programmieren. Das Thema Versionskontrolle hat sich damit ganz plötzlich verändert: von einer mühsamen Pflicht hin zu einem Tool, das die Code-Qualität erhöht und komplexe Projekte viel besser handhabbar macht. Und das haben die Entwickler sehr schnell begriffen.

PHP Magazin: Einfachere Softwareentwicklung durch ein Versionskontrollsystem? Wie kann man sich das denn in der Praxis vorstellen? Kannst du ein paar Beispiele nennen?

Günther: Dadurch, dass Git ein dezentrales System ist, laufen fast alle Kommandos lokal ab — also ohne Verbindung zu einem entfernten Server. Das macht die Benutzung enorm schnell und erlaubt mir gleichzeitig, auch offline zu arbeiten. Zwei Dinge, die man im Alltag nicht unterschätzen sollte.

Vor allem aber hilft Git dabei, verschiedene Themen sauber voneinander zu trennen. Schließlich werden in modernen Software-Projekten immer mehrere Themen parallel bearbeitet: Während ich an Feature A arbeite, muss ich gleichzeitig mit einem Kollegen an Feature B arbeiten — und nebenbei auch noch einen Bug fixen. Diese verschiedenen Themen in sogenannten „Branches“ voneinander getrennt zu halten, hilft enorm, die Übersicht zu behalten…

PHP Magazin:…wobei Branching ja aber durchaus kein neues Konzept ist, das Git erfunden hat. Auch andere Systeme wie Subversion bieten Branching und Merging schon seit langem an.

Günther: Völlig richtig. Aber genau hier beginnen die Probleme, wenn ein Entwickler aus anderen Systemen vorbelastet ist. Schließlich kennt er z.B. das Thema Branching schon aus Subversion und hat es möglicherweise als wenig hilfreich und schon gar nicht einfach erlebt. Dass er hier aber Äpfel mit Birnen vergleicht, weiß er vermutlich nicht. Denn viele Konzepte, wie gerade das Branching, sind in Git völlig anders gelöst und stark verbessert. Man muss also das vermeintliche Vorwissen erst einmal beiseite legen, und sich unvoreingenommen auf Git einlassen. Wer das schafft, kann stark profitieren. Schließlich kann ich aus eigener Erfahrung sagen: Mit Git hat sich meine Art zu entwickeln radikal verändert. Git gab mir die Möglichkeit, Dinge viel einfacher auszuprobieren. Denn ich hatte die Gewissheit, diese Sachen später auf einfache Weise zu integrieren oder wieder rückgängig zu machen. Man kann in Git nur schwer etwas kaputt machen!

PHP Magazin: Das klingt so, als ob auch ein bisschen Umgewöhnung nötig wäre, wenn man auf Git umsteigen will. Lohnt sich dieser Aufwand denn wirklich?

Günther: Die Entscheidung zu einem Umstieg fällt leichter, wenn man folgendes versteht: Git ist kein kurzfristiger Trend, der im nächsten Jahr wieder verschwinden wird. Git hat längst eine kritische Masse erreicht und überschritten, die es zu einem zentralen Tool in der professionellen Softwareentwicklung macht.

PHP Magazin: Aber auch bei Git wird doch sicher nicht alles einfach und toll sein, oder? Wo liegen denn die Schwächen?

Günther: Die Lernkurve ist in Git sicherlich steiler ist als in anderen Systemen. Es dauert eine Weile, bis man die wichtigsten Konzepte verinnerlicht hat. Als Anfänger kann man mittlerweile aber auf eine große Menge an Dokumentation, Tutorials und Workshops zurückgreifen. Nach ein paar Wochen lassen die Kopfschmerzen dann auch nach — und höchstwahrscheinlich will man nicht wieder zurück…

PHP Magazin: Mit welchen Tools lässt sich Git leichter bedienen? Oder behält man in der Kommandozeile mehr Kontrolle?

Günther: Da bin ich als Hersteller einer Git-GUI für Mac natürlich etwas befangen… 😉 Mit einer guten GUI-Anwendung macht man sich das Leben aber tatsächlich deutlich einfacher. Viele komplizierte Workflows und Kommandos können in den Alltag integriert werden, die auf der Kommandozeile doch etwas aufwendig wären. Aber trotzdem empfehle ich Anfängern ganz klar, zumindest die Grundlagen auch in der Kommandozeile zu lernen. Erst müssen die Konzepte verstanden sein, bevor man — in GUI oder Kommandozeile — produktiv arbeiten und die Vorteile von Git wirklich nutzen kann.

PHP Magazin: Vielen Dank für das Gespräch!

Tobias Günther ist Gründer und CEO der fournova GmbH. Mit seinem Team zusammen entwickelt er den Git-Client „Tower„, der mittlerweile weltweit von über 25.000 Kunden wie Apple, Google, Facebook oder Twitter täglich eingesetzt wird.

Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -