Clone-Unterverzeichnis des Git-Repositorys
In diesem Tutorial erfahren Sie, wie Sie ein Unterverzeichnis eines Git-Repositorys klonen.
Git, ein Versionskontrollsystem, verwaltet den Verlauf der Änderungen, die an einem Projektverzeichnis vorgenommen wurden. In einer typischen Projektentwicklungsumgebung würde man verschiedene Projektmodule in verschiedene Unterverzeichnisse aufteilen.
Man kann dann nur bestimmte Projektmodul-Unterverzeichnisse auschecken oder klonen. Für solche Zwecke können wir die von Git bereitgestellte sparse-checkout
-Funktion verwenden.
Wir werden dies nun an einem Beispiel veranschaulichen.
Klonen oder Checkout-Unterverzeichnis im Repository in Git
Git wird in einer kollaborativen Entwicklungsumgebung verwendet, um die Änderungen zu verfolgen, die an Dateien im Projektverzeichnis vorgenommen wurden. Man würde verschiedene Projektmodule in separaten Unterverzeichnissen innerhalb des Hauptprojektverzeichnisses in der Projektentwicklungsumgebung aufbewahren.
Das Git-Repository würde dieses Hauptprojektverzeichnis verfolgen, und somit kann man das gesamte Projektverzeichnis klonen oder auschecken. Typischerweise arbeiten in einem großen Projekt verschiedene Teams an verschiedenen Projektmodulen.
Daher müsste man in solchen Fällen nicht das gesamte Projektverzeichnis auschecken. Es reicht aus, nur das Unterverzeichnis des Projektmoduls zu klonen, an dem ein bestimmtes Team arbeitet.
Das Klonen nur bestimmter Unterverzeichnisse (d. h. einer Teilmenge des Projekt-Git-Repositorys) wird als sparse checkout
bezeichnet. Wir können nur die gewünschten Unterverzeichnisse aus dem Projektverzeichnis im Git-Repository in einem sparse checkout
auschecken.
Angenommen, wir haben ein Projektverzeichnis namens my_project
. Im Projektverzeichnis my_project
gibt es Unterverzeichnisse für verschiedene Module namens frontend
, backend
, documentation
usw.
Wir wollen nur das Modul-Unterverzeichnis frontend
auschecken oder klonen. Daher erstellen wir nun zunächst wie folgt ein Verzeichnis für das Repository.
$ mkdir my_project
$ cd my_project
Nach dem Erstellen des Projektverzeichnisses initialisieren wir nun das Git-Repository und fügen die Remote-URL wie folgt hinzu.
$ git init
$ git remote add -f origin https://github.com/johndoe/my_project.git
Wir müssen sparse checkouts
aktivieren, um nur Unterverzeichnisse des Hauptprojektverzeichnisses auszuchecken oder zu klonen.
Wir können den Befehl git config
verwenden, um dasselbe zu erreichen. Wir müssen den Befehl git config
wie folgt verwenden.
$ git config core.sparsecheckout true
Wir können Git jetzt mitteilen, welche Unterverzeichnisse wir auschecken möchten.
Um also nur das Auschecken des Unterverzeichnisses frontend
zu ermöglichen, müssen wir es in der Datei .git/info/sparse-checkout
auflisten.
$ echo "frontend/" >> .git/info/sparse-checkout
Jetzt können wir die Dateien aus dem Remote-Git-Repository abrufen.
$ git pull origin master
Jetzt haben wir im Arbeitsbaum nur noch das Unterverzeichnis frontend
des Hauptprojekts my_project
.
Daher haben wir gelernt, wie man nur bestimmte Unterverzeichnisse eines Git-Repositorys in Git klont oder auscheckt.
Für weitere Informationen, besuchen Sie bitte: