Clone-Unterverzeichnis des Git-Repositorys

Azhar Bashir Khan 31 Mai 2022
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:

  1. git-init
  2. git-read-tree
  3. git-sparse-checkout

Verwandter Artikel - Git Clone