Basisverzeichnis

In diesem Beispiel landet das Verzeichnis, in dem Sie und Ihre Kollegen entwickeln, auf einem Server – diese Rolle kann auch Ihr heimischer Rechner übernehmen. Die Firewall darf dazu den Git-Port 9418 nicht blockieren. Sofern Sie hinter einem Router arbeiten, gilt es darüber hinaus, den Port auf Ihren Rechner weiterzuleiten: Andernfalls erhalten Anwender außerhalb Ihres lokalen Netzes keinen Zugriff auf Git. Zum Verwenden des Git-Webinterfaces benötigen Sie ferner einen Webserver, idealerweise Apache.

Um den den aktuellen Kernel-Zweig von Linus Torvalds [4] in das Verzeichnis /home/git/linux-2.6-local zu klonen (Abbildung 2), geben Sie den Befehl aus der ersten Zeile von Listing 2 ein. Anschließend legen Sie in der Datei description im Repository-Ordner eine Beschreibung des Projekts an (Listing 2, Zeile 2)

Abbildung 2: In diesem Beispiel entsteht auf dem Server ein Klon von Linus Torvalds' linux-2.6-Verzeichnis.

Listing 2

$ git clone -n --bare git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git linux-2.6-local
$ echo "Entwicklungskernel und eigene Patches" > linux-2.6-local/description

Beachten Sie, dass die Quellen im Kernel-Git derzeit mehrere hundert MByte umfassen. Das Klonen des Ordners dauert entsprechend je nach Bandbreite Ihres Internetanschlusses einige Zeit. Im nächsten Schritt legen Sie auf Ihrem lokalen System eine Kopie Ihres Repositories an und bearbeiten diese.

Lokale Arbeitskopie

Um Git auf dem heimischen Rechner als Client und Server gleichzeitig zu betreiben, müssen Sie nun den Abzug des Zweigs aus dem Verzeichnis /home/git erneut klonen. Anderenfalls wäre der Git-Server nicht in der Lage, Ihre Änderungen korrekt ins Repository einzupflegen. Sie verhalten sich diesem gegenüber entsprechend wie ein externer Anwender. Heißt der Hostname des Servers git.example.org, lautet die Anweisung:

$ git clone ssh://git.example.org/linux-2.6-local linux-2.6-local

Danach nehmen Sie mit Git auf dem Server keine direkten Veränderungen mehr an Ihrem Repository vor. Diese stoßen zukünftig nur noch Entwickler an, die ihre Modifikationen von lokalen Kopien auf den Server hochladen.

Zu einer häufig wiederkehrenden Aufgabe gehört in unserem Beispiel der Abgleich des Linux-Hauptentwicklungszweiges mit dem Repository auf Ihrem Server. Das liegt vor allem daran, dass sich dieses Repository permanent ändert und sie damit den jeweils aktuellsten Stand besitzen. Dieser Abgleich der lokalen Daten mit dem Upstream-Repository heißt "pull", das Hochladen eigener Modifikationen nennt sich "push".

Folgender Befehl, im lokalen Repository-Verzeichnis ausgeführt, legt Linus Torvalds' Git-Repository als Quelle für Veränderungen in Ihrem lokalen Repository fest:

$ git remote add linus git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git

Der Befehl git fetch -v linus aktualisiert zukünftig Ihre lokale Arbeitskopie. Wenn sich also zwischen dem Klonen des Repositorys am Server und auf Ihrer Workstation etwas verändert, würden Sie diese Änderungen jetzt bereits sehen. Die Befehle git push -v origin und git pull bringen das Repository auf Ihrem Server auf den aktuellen Stand. Damit synchronisieren Sie sowohl Ihre lokale Arbeitskopie als auch das Repository auf dem Server.

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

Kommentare

Infos zur Publikation

LU 12/2017: Perfekte Videos

Digitale Ausgabe: Preis € 5,95
(inkl. 19% MwSt.)

LinuxUser erscheint monatlich und kostet 5,95 Euro (mit DVD 8,50 Euro). Weitere Infos zum Heft finden Sie auf der Homepage.

Das Jahresabo kostet ab 86,70 Euro. Details dazu finden Sie im Computec-Shop. Im Probeabo erhalten Sie zudem drei Ausgaben zum reduzierten Preis.

Bei Google Play finden Sie digitale Ausgaben für Tablet & Smartphone.

HINWEIS ZU PAYPAL: Die Zahlung ist ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!

Stellenmarkt

Aktuelle Fragen

Huawei
Pit Hampelmann, 13.12.2017 11:35, 2 Antworten
Welches Smartphone ist für euch momentan das beste? Sehe ja die Huawei gerade ganz weit vorne. Bi...
Fernstudium Informatik
Joe Cole, 12.12.2017 10:36, 2 Antworten
Hallo! habe früher als ich 13 Jahre angefangen mit HTML und später Java zu programmieren. Weit...
Installation Linux mint auf stick
Reiner Schulz, 10.12.2017 17:34, 3 Antworten
Hallo, ich hab ein ISO-image mit Linux Mint auf einem Stick untergebracht Jetzt kann ich auch...
Canon Maxify 2750 oder ähnlicher Drucker
Hannes Richert, 05.12.2017 20:14, 4 Antworten
Hallo, leider hat Canon mich weiterverwiesen, weil sie Linux nicht supporten.. deshalb hier die...
Ubuntu Server
Steffen Seidler, 05.12.2017 12:10, 1 Antworten
Hallo! Hat jemand eine gute Anleitung für mich, wie ich Ubuntu Server einrichte? Habe bisher...