Effektive Zusammenarbeit im Development-Team Erste Schritte mit Git und GitHub

Von Thomas Joos |

Anbieter zum Thema

Git ist seit Jahren eines der bekanntesten Versionskontrollsysteme für Entwickler. Mit der Lösung können Teams gemeinsam an Projekten arbeiten und Quellcode-Versionen effektiv verwalten, auch in Kombination mit GitHub.

In Repositories können jederzeit Daten hoch- und heruntergeladen werden.
In Repositories können jederzeit Daten hoch- und heruntergeladen werden.
(Bild: Joos / GitHub)

Für viele Entwickler sind Git und GitHub mittlerweile wichtige Tools. Git ist ein Open-Source-System, das zur Versionskontrolle genutzt werden kann, zum Beispiel wenn Entwickler im Team arbeiten. Dadurch erhalten alle Teammitglieder gemeinsamen Zugriff auf den Quellcode.

Nach einer Umfrage von Stack Overflow nutzen bereits 2018 gut 87 Prozent aller Entwickler Git. Der Ursprung von Git ist Linux. Es stehen allerdings auch Clients für Windows und macOS zur Verfügung, mit denen Entwickler auch Plattformübergreifend arbeiten können.

Bildergalerie
Bildergalerie mit 8 Bildern

Es ist jederzeit möglich, mit Git-Clients zwischen den Versionen des Codes zu wechseln und Changes nachzuverfolgen. Änderungen werden über Repositories zur Verfügung gestellt. Durch die Versionskontrolle können Entwickler jederzeit an mehreren Versionen arbeiten. Die große Stärke von Git ist der dezentrale Ansatz, auch wenn es mit GitHub faktisch zentrale Server gibt.

Repositories in Git

Die Entwickler verwenden bei Git jeweils ein eigenes Archiv, das als „Repository“ bezeichnet wird. Entwickler arbeiten mit ihrem lokalen Repository und synchronisieren Code-Änderungen dann mit der Cloud, beispielsweise beim Code-Hosting-Dienst GitHub.

GitHub stellt zwar generell auch eine Art Zentralarchiv dar, das ändert aber nichts daran, dass Entwickler vor allem mit ihrer lokalen Datenbank/Repository arbeiten. Das macht die Arbeit wesentlich schneller, da das Hochladen nur bei Notwendigkeit erfolgt. Langsame Netzwerke und Internetverbindungen sind für Nutzern von Git und GitHub somit kein Problem.

Ein weiterer Vorteil der lokalen Arbeit besteht auch darin, dass beim generellen Schreiben von Code keine Internetverbindung notwendig ist, sondern erst dann, wenn ein Abgleich des lokalen Repositories erfolgen soll. Es ist also nicht nur unerheblich, ob die Internetverbindung zeitweise ausfällt, die Verbindung selbst ist für die produktive Arbeit überhaupt nicht notwendig.

Git und GitHub gemeinsam nutzen

Die Online-Plattform GitHub basiert selbst auf der Versionsverwaltung von Git. Die Code-Hosting-Plattform ist mittlerweile im Besitz von Microsoft und steht kostenlos zur Verfügung, wobei es für professionelle Teams auch kostenpflichtige Abonnements gibt. Diese sind insbesondere dann notwendig, wenn Projekte, an denen mehr als drei Entwickler arbeiten, privat bleiben sollen.

Um GitHub zu nutzen, ist eine Registrierung und die Auswahl eines Zahlplans bzw. Abo-Modells notwendig. Zu Beginn reicht die kostenlose Version in den meisten Fällen aus, nach erfolgreicher Registrierung kann das erste Repository erstellt werden. Entwickler arbeiten zunächst im privaten Modus mit dem Repository auf ihrem Rechner. Bei der Übertragung zu GitHub werden die Daten dann öffentlich oder für das Team nutzbar.

Mit Git können Entwickler auch lokal eigene Branches nutzen, mit denen die anderen Entwickler im Team nichts zu tun haben. Werden diese privaten Branches nicht mehr benötigt, müssen sie nicht erst hochgeladen werden, sondern können auch jederzeit wieder gelöscht werden.

Git-Clients verwenden

Um Git und GitHub zu verwenden, zum Beispiel von Windows und Linux aus, sind Entwicklungsumgebungen und Clients notwendig, mit denen Git genutzt werden kann. Ein kostenloses Beispiel ist SourceTree. Der kostenlose Git-Client bietet eine grafische Oberfläche und steht für Windows und macOS zur Verfügung. Ein kostenpflichtiger Client ist Tower.

Auf Debian- und Ubuntu-basierten Linux-Rechnern kann der Terminal-Client für Git zum Beispiel mit ...

sudo apt install git

... installiert werden. Auch Entwicklungsumgebungen wie Visual Studio lassen sich direkt an GitHub anbinden. Wenn Git im Terminal genutzt wird, steht der Befehl „git“ mit verschiedenen Optionen zur Verfügung. Eine Hilfe wird mit „git help“ angezeigt. Um Git auf einem Computer einzurichten, muss der Client konfiguriert werden:

git config --global user.name "<Name>"
git config --global user.email "<E-Mail-Adresse>"

Mit ...

git init

... wird ein erstes Repository erstellt.

In vielen Fällen arbeiten Entwickler aber nicht mit dem Terminal, sondern mit Git-Clients wie Atlassian SourceTree. Nach der kostenlosen Registrierung, kann SourceTree dauerhaft genutzt werden. Hier können auch Git-Hub-Konten schnell und einfach angebunden werden. Mit SourceTree können die Repositories in GitHub in lokale Pfade geklont werden.

Ein weiteres Tool für Windows ist Git for Windows. Dieses kommt mit einer eigenen Bash und einer grafischen Oberfläche für Git. Wer Dateien zu GitHub hoch- oder herunterladen will, kann in den verschiedenen Git-Clients problemlos auf das Terminal oder die Befehlszeile setzen. Git kann in diesem Zusammenhang auch mit der PowerShell genutzt werden.

Jetzt Newsletter abonnieren

Täglich die wichtigsten Infos zu Softwareentwicklung und DevOps

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung.

Aufklappen für Details zu Ihrer Einwilligung

Für den nicht kommerziellen Einsatz ist das Tool Gitkraken Git GUI ebenfalls ein bekannter Vertreter. Auch dieses Tool steht für Windows, macOS und Linux zur Verfügung.

Daten sollten nicht zu groß werden

Da die Entwickler mit Git mit ihren eigenen Repositories arbeiten, bedeutet das die notwendige Replikation aller notwendigen Daten im Repository. Das kann schnell eine große Menge an Speicherplatz verbrauchen, da die Daten jederzeit wieder hoch- und heruntergeladen werden müssen, und zwar bei allen Teammitgliedern. Generell sollten einzelne Repositories also nicht mehrere Gigabyte große werden, und auch die einzelnen Dateien im Repository sollten nicht zu groß sein.

(ID:46365566)