An dieser Stelle solltest du in der Lage sein, die meisten der täglichen Aufgaben zu erledigen, für die du Git verwenden wirst. Um jedoch in Git mit Anderen zusammenarbeiten zu können, benötigst du ein externes Git-Repository. Obwohl du, technisch gesehen, Änderungen in und aus den Repositorys deiner Mitstreiter schieben kannst, ist das nicht empfehlenswert, da das ziemlich leicht zu Verwirrung führen kann, wenn du nicht sehr vorsichtig bist. Darüber hinaus ist es vorteilhaft, dass deine Mitstreiter auch dann auf das Repository zugreifen können, wenn dein Computer offline ist – ein zuverlässigeres gemeinsames Repository ist oft sinnvoll. Daher ist die bevorzugte Methode für die Zusammenarbeit, einen Zwischenspeicher einzurichten, auf den beide Seiten Zugriff haben, und von dem aus sie Push-to and Pull ausführen können.
Das Betreiben eines Git-Servers ist recht unkompliziert. Zuerst bestimmst du, welche Protokolle dein Server unterstützen soll. Der erste Abschnitt dieses Kapitels behandelt die verfügbaren Protokolle und deren Vor- und Nachteile. In den nächsten Abschnitten werden einige typische Setups mit diesen Protokollen erläutert und erklärt, wie du deinen Server mit diesen Protokollen zum Laufen bringst. Zuletzt werden wir ein paar gehostete Optionen durchgehen, falls du nicht den Aufwand der Einrichtung und Wartung deines eigenen Git-Servers auf dich nehmen willst.
Wenn du keinen eigenen Server betreiben möchtest, kannst du direkt zum letzten Abschnitt dieses Kapitels springen. Dort sind einige Optionen zum Einrichten eines gehosteten Kontos zu finden. Anschließend kannst du mit dem nächsten Kapitel fortfahren, in dem die verschiedenen Vor- und Nachteile der Arbeit in einer verteilten Versionskontrollumgebung erläutert werden.
Ein entferntes Repository ist in der Regel ein „nacktes Repository“ – ein Git-Repository, das kein Arbeitsverzeichnis hat.
Da das Repository nur als Kollaborationspunkt verwendet wird, gibt es erstmal keinen Grund, einen Snapshot auf die Festplatte speichern zu lassen; es enthält nur die Git-(Kontroll-)Daten.
Im einfachsten Fall besteht ein nacktes (eng. bare) Repository nur aus dem Inhalt des .git
Verzeichnisses deines Projekts.
Du hast mehrere Möglichkeiten, ein entferntes Git-Repository in Betrieb zu nehmen, damit du mit anderen zusammenarbeiten und deine Arbeit teilen kannst.
Der Betrieb eines eigenen Servers gibt dir viel Kontrolle und ermöglicht es dir, den Server innerhalb deiner eigenen Firewall zu betreiben. Ein solcher Server benötigt jedoch in der Regel einen angemessenen Teil deiner Zeit für Einrichtung und Wartung. Wenn du deine Daten auf einem gehosteten Server ablegst, macht es dir dein Leben wesentlich einfacher. Du musst aber die Möglichkeit haben, deinen Code auf fremden Servern zu speichern. Einige Unternehmen erlauben das nicht.
Es sollte ziemlich einfach sein festzustellen, welche Lösung oder Kombination von Lösungen für dich und dein Unternehmen am besten geeignet ist.