by

Git verzeichnis herunterladen

Das Tool überprüft zunächst, ob die Verzeichnisliste verfügbar ist. Es ist, dann wird es nur rekursiv das .git-Verzeichnis herunterladen (was Sie mit wget tun würden). Beispiel (woff2-Dateien aus einem Unterverzeichnis in fontawesome): Wie kann ich nur einen bestimmten Ordner oder ein bestimmtes Verzeichnis von einem Remote-Git-Repository herunterladen, das auf GitHub gehostet wird? Es gibt jedoch einen viel einfacheren Weg. GitHub verfügt über eine API, mit der Sie eine einzelne Datei oder den Inhalt eines gesamten Verzeichnisses mithilfe von GET-Anforderungen herunterladen können. Sie können auf ein Verzeichnis zugreifen, indem Sie api.github.com/repos/:owner/:repo_name/contents/:path ein JSON-Objekt zurückgibt, das alle Dateien im Verzeichnis aufgibt. In der Enumeration ist ein Link zum Rohinhalt der Datei, dem download_url Parameter enthalten. Die Datei kann dann mit dieser URL heruntergeladen werden. Wenn Sie wirklich nur den Ordner “herunterladen” und nicht “klonen” möchten (für die Entwicklung), der einfachste Weg, einfach eine Kopie der neuesten Version des Repositorys (und damit einen Ordner/eine Datei darin) zu erhalten, ohne das gesamte Repository klonen oder sogar git installieren zu müssen, ist es, ein Zip-Archiv (für jedes Repo, Gabel, Zweig, Commit, etc.) herunterzuladen, indem Sie zum gewünschten Repository/Gabel/Zweig/Commit auf GitHub gehen (z.B. http(s)://github.com///commit/ für eine Kopie der Dateien, wie sie nach einem bestimmten Commit waren) und die Schaltfläche Downloads in der Nähe der oberen rechten Seite auswählen.

Sie können es nicht; Im Gegensatz zu Subversion, wo jedes Unterverzeichnis einzeln ausgecheckt werden kann, arbeitet Git auf einer Ganzen Endlagerbasis. Es gibt vier Optionen, die unten zusammengefasst sind. Und für diejenigen, die eine praktischere Erklärung bevorzugen, habe ich ein YouTube-Video zusammengestellt: Laden Sie einzelne Dateien und Ordner von GitHub herunter. Das Herunterladen des gesamten Repositorys würde mehrere Gigabyte (!) zum Herunterladen erfordern, über eine langsame Verbindung kann dies viel Zeit in Anspruch nehmen. Das Herunterladen einzelner Dateien würde auch viel Zeit in Anspruch nehmen, da ich mit der rechten Maustaste auf “Raw” – Taste jeder Datei klicken muss. Wenn Sie mit der Versionskontrolle vorhandener Dateien beginnen möchten (im Gegensatz zu einem leeren Verzeichnis), sollten Sie wahrscheinlich mit der Nachverfolgung dieser Dateien beginnen und einen ersten Commit ausführen. Sie können dies mit ein paar git add Befehle, die die Dateien angeben, die Sie verfolgen möchten, gefolgt von einem git Commit: Aus welchem Grund auch immer, die svn-Lösung funktioniert nicht für mich, und da ich keine Notwendigkeit von svn für etwas anderes, es machte keinen Sinn, Zeit zu verbringen, um es zu machen, so suchte ich nach einer einfachen Lösung mit Werkzeugen, die ich bereits hatte. Dieses Skript verwendet nur curl und awk, um alle Dateien in einem GitHub-Verzeichnis herunterzuladen, das als “/:user:repo/contents/:path” beschrieben wird. Zum Beispiel, um das Verzeichnis aus der folgenden URL zu exportieren: Das erstellt ein Verzeichnis mit dem Namen libgit2, initialisiert ein .git-Verzeichnis darin, zieht alle Daten für dieses Repository herunter und checkt eine Arbeitskopie der neuesten Version aus.