Git unterstützt nicht direkt das Klonen nur einer bestimmten Datei oder eines Verzeichnisses aus einem Repository. Du kannst jedoch --depth 1 verwenden, um nur eine bestimmte Revision zu klonen (im Gegensatz zur gesamten Historie) und --no-checkout gefolgt von git sparse-checkout set verwenden, um nicht den gesamten Dateibaum, sondern nur eine bestimmte Datei auszuchecken.
Im folgenden Beispiel checken wir nur die EMQX-Konfigurationsdateien (in apps/emqx/etc) aus dem gesamten emqx-Repository aus:
git_sparse_clone.sh
git clone --depth 1 --branch v5.0.8 --no-checkout https://github.com/emqx/emqx.git
cd emqx
git sparse-checkout set apps/emqx/etc
git checkout v5.0.8Nach diesem Befehl enthält der emqx-Ordner nur .git und apps/emqx/etc.
Beachte, dass du git sparse-checkout set mehrfach aufrufen kannst, um mehrere unterschiedliche Pfade auszuchecken.
Dieses Beispiel wurde aus diesem StackOverflow-Post adaptiert.
Ähnliche Beiträge nach Kategorie:
Git Version Management
Wenn dieser Beitrag dir geholfen hat, erwäge, mir einen Kaffee zu spendieren oder per PayPal zu spenden, um die Recherche und Veröffentlichung neuer Beiträge auf TechOverflow zu unterstützen