GUI-Clients für Git: 5 grafische Benutzeroberflächen im Test
Ein Git-GUI-Client muss natürlich nicht nur spannend für alle Einsteiger sein. Es hilft auch, eine zentrale Stelle für die Verwaltung der Repositorys zu schaffen. Natürlich können alle Aktionen auch ohne ein solches Zusatzprogramm erfolgen, doch um sich einen sauberen Überblick zu verschaffen, ist es eine gute Lösung.
1. Gitbox
Mit Gitbox haben wir unseren ersten Kandidaten, der uns einen sehr einfachen und übersichtlichen Funktionsumfang bietet. Repositorys können erstellt oder von einem externen Server kopiert werden. Dabei gibt es aber keine direkte GitHub- oder Bitbucket-Integration, die automatisch alle Remote-Repositorys auflistet – diese müssen einzeln angesprochen werden. Eine lokale Repository-Übersicht, eine History der letzten Commits und ein Diff-Tool sind natürlich vorhanden, und auch Pull, Push, Fetch oder Merge sind Standard-Funktionalitäten.
Insgesamt ist Gitbox eine GUI für Entwickler, die schon mit dem Terminal gearbeitet haben. Sie bringt keinen eigenen Workflow oder Abhängigkeiten mit, sondern ist eine reine visuelle Oberfläche, die Terminal-Befehle ausführt. Das macht sie sehr gut, sie kann aber auch nicht mehr. Um Authentifizierung oder einen Workflow muss man sich selbst kümmern.
Gitbox ist nur für den Mac erhältlich und kann über die Webseite oder den Mac-App-Store für 15 Euro bezogen werden, wer sich unsicher ist, kann auch eine Trial-Version runterladen. Gitbox bietet ein gutes Preis-Leistungs-Verhältnis und verspricht nicht mehr als es kann.
2. SourceTree
SourceTree gehört zur Produkt-Familie von Atlassian und erhält somit Premium-Support von einer der größten Software-Development-Schmieden. Von SourceTree kann alles erwartet werden, was Git ermöglicht. Von Tags über mehrere Remote-Repositories, ein integriertes Diff-Tool oder unterstützte Submodules bis hin zu einer direkten Integration von Bitbucket, GitHub oder Kiln.
Wir erhalten mit SourceTree ein sehr umfangreiches und gutes Tool, das aber auch Einarbeitungszeit benötigt – somit ist es sicher nicht für jeden Einsteiger geeignet, um nicht direkt überflutet zu werden mit der Fülle an Funktionen, aber für jeden Terminal-Umsteiger, der das schwarze Fenster hinter sich lassen will, die beste Wahl. Über die Erweiterung git-flow können zusätzliche Workflows erstellt werden.
SourceTree ist kostenlos und für den Mac- oder Windows-Rechner verfügbar. Bezogen werden kann SourceTree über die Webseite.
Wer sich im GitHub-Universum wohlfühlt und schon den Atom-Editor von GitHub nutzt, der wird sicher auch etwas mit GitHub Desktop anfangen können. GitHub Desktop unterstützt ausschließlich GitHub als Remote-Repository-Quelle und kann daher auch nur diese verwalten. Wer lieber Bitbucket als Service benutzen will oder einen Terminal-Ersatz benötigt, kann mit diesem Tool nichts anfangen.
Dafür ist GitHub Desktop das perfekte Einsteiger-Tool. Es ist minimalisiert auf die wichtigsten Funktionen, die wir benötigen. Wir können Repositories erstellen, kopieren oder einen neuen Branch eröffnen, den angelegten Branch mit Commits füllen und wieder mergen – einen sogenannten Pull-Request anlegen. Dabei erhalten wir alle nötigen Informationen und können auch den Branch mit einem integrierten Diff-Toll vergleichen. Unsere erstellten GitHub-Repositories und die dazugehören Branch-Trees sind sehr übersichtlich aufbereitet und erfüllen ihren Zweck. Ein kleines Einsteiger-Tutorial gibt es nach der Installation dazu und wir können direkt loslegen.
Wer mit Git anfängt oder schnell einen Pull-Request erstellen will, der ist mit GitHub Desktop bestens bedient. GitHub Desktop ist kostenlos und für den Mac- und Windows-Rechner erhältlich. Bezogen werden kann das Tool direkt über die Webseite.
4. Tower 2
Schon vor einiger Zeit haben wir über Tower 2 berichtet. Tower 2 ist vom Funktionsumfang her mit SourceTree zu vergleichen, wobei es noch einige hübsche Ergänzungen bietet. Wir haben eine sehr gute Übersichtlichkeit, die den großen Funktionsumfang sehr gut verpackt. Die Funktionen sind logisch angeordnet und erhalten die nötige Präsenz. Shortcuts und Icons gliedern die Bedienung gut. Als externe Dienste können GitHub, Beanstalk oder Bitbucket angebunden werden.
Interessant ist auch der Conflict-Wizard, der mögliche Probleme bei einem Push aufzeigt. Sollte beispielsweise eine Datei gelöscht worden sein, die wir jetzt geändert haben, erhalten wir einen visuellen Status und können auf das Problem eingehen. Git-Flow und ein Service-Manager sind natürlich auch integriert. Insgesamt ist es eine persönliche Entscheidung, ob ihr eher zu Tower 2 oder SourceTree greifen wollt.
Ein Argument könnte sein, dass Tower 2 mit einem Preis von 59 Euro sicher kein Schnäppchen ist, besonders da es gute kostenlose Alternativ-Software gibt. Doch wer sich ein mal in das Stück Software verliebt hat, wird diesen Preis vermutlich gerne zahlen. Tower 2 kann direkt über die Webseite gekauft oder als Trial für den Mac runtergeladen werden.
5. GitEye
Auch über GitEye haben wir in der Vergangenheit schon berichtet. Das Tool liefert eine solide Grundlage und beherrscht den vollständigen Funktionsumfang eines umfangreichen Git-GUI-Clients. Es kann an jeden Service angebunden werden und liefert alle wichtigen Informationen, die wir benötigen. Sicherlich ist GitEye visuell nicht der schönste Client, er bietet aber mit seinem Windows-, Mac- und Linux-Support ein Alleinstellungsmerkmal, das die andere vier Kandidaten nicht aufweisen können.
Zur Integration werden TeamForge, CloudForge oder GitHub angeboten. Zusätzlich können ein integrierter Bug-Tracker oder eine Task-List aufgerufen werden.
Wen die veraltete Oberfläche nicht stört und wer gerne auf einem Linux-System arbeitet, der findet mit GitEye die richtige Lösung. Auch hier kann das Terminal zu Hause bleiben. Mit einer 30-Tage-Testversion können wir das Tool ausprobieren.
Git-GUI-Clients: Das Fazit
Es gibt eine Menge Git-GUI-Clients, von Linux-Lösungen wie GitEye oder Einsteiger-Clients mit Tutorial über Profi-Software, wie Tower 2 oder SourceTree bis hin zu Gitbox, das eher eine Ergänzung für Terminal-Nutzer darstellt – für jeden sollte etwas dabei sein.
Alle fünf Git-GUI-Clients machen ihren Job gut und bieten einen Mehrwert zum Terminal, wobei vor allem die Preisgestaltung sehr unterschiedlich ausfällt.
Welcher Git-GUI-Client ist euer Favorit?
Ihr schreibt, dass GitHub lediglich Repositorys verwalten kann, die auf GitHub gehostet sind. Zitat: „Wer lieber Bitbucket als Service benutzen will oder einen Terminal-Ersatz benötigt, kann mit diesem Tool nichts anfangen.“.
GitHub kann sehr wohl beliebige Repositorys verwalten, die beispielsweise auf einem GitLab CE Server gehostet sind. Dafür muss man es einfach einmal als lokales Repository hinzufügen und fertig.
Sonst eine sehr hilfreiche und schöne Übersicht. Ich persönlich benutze den GitHub Client, da er sehr reduziert daher kommt aber alles bietet, was ich so im Alltag brauche. Er ist zuverlässig und unkompliziert zu verwenden und insbesondere wenn man hauptsächlich mit GitHub arbeitet optimal.
Wenn man sowohl auf dem Mac als auch auf Windows arbeitet und nach einem kostenlosen und sehr einfach zu bedienen Tool sucht, dem kann ich das ans Herz legen. Als Erweiterung sehe ich dazu Source Tree, welches zwar eine deutlich überladenere Oberfläche hat, aber dafür sicher viel umfangreichere Optionen bietet.
Und was spricht jetzt gegen die Kommandozeile? Schneller, einfacher und weniger fehleranfällig.
Wer es kann oder mag ok – aber gerade Einsteiger oder Leute, die ansonsten auch nie die Kommandozeile verwenden, kommen mit grafischen UIs meist besser klar.
Ich finde gitext (http://sourceforge.net/projects/gitextensions/) sollte man unbedingt noch erwähnen. Ist ein verdammt schneller client und unterstützt einige nützliche Dinge wie z.B. git-flow etc.
Wer das Windows Betriebssystem nutzt, sollte sich unbedingt TortoiseGit ansehen. https://tortoisegit.org/
Komisch.. Der Test scheint relativ aktuell zu sein, trotzdem fehlt GitKraken, das auf allen drei großen Plattformen zu haben ist und optisch und funktionell selbst die meisten Kaufprogramme die ich gesehen habe übertrifft: https://www.gitkraken.com/ – wäre schön wenn man den Artikel hierzu aktualisiert. Selbst auf der Git-Seite ist es aufgelistet.
Hallo mm.mpathy,
danke für deine Ergänzung. Als der Beitrag entstanden ist, war GitKraken leider noch in der Close-Beta. Wir schauen, was sich machen lässt. ;)
Beste Grüße, Jonathan
Dazu sollte man gleich sagen, dass GitKraken mit Webtechnik gebaut ist (basiert auf Electron) und entsprechend langsam startet. Die Bedienung ist ausreichend flott, allerdings kackt er öfter mal komplett ab. Viel nerviger sind öfter mal auftretende teilweise Renderfehler die einen inkonsistenten Git-Stand suggerieren, der tatsächlich nicht möglich ist. Zum Beispiel passiert es mir öfter mal, dass nach dem Committen der Stage noch angezeigt wird. Manchmal lassen sich Dateien nicht stagen, beim Klick passiert einfach gar nichts. Korrigieren lässt sich das nur durch neuladen (Cmd+R reicht).
Also optisch und von der Struktur gefällt mir GitKraken sehr gut, die Umsetzung ist leider bei weitem nicht so gut wie sie sein müsste um produktiv eingesetzt zu werden.
Fork (https://git-fork.com/) macht einen guten Eindruck, sieht SourceTree ähnlich hat aber einen besseren Diff-Viewer. Ist leider macOS-only.