2009-08-06 2 views
2

Gibt es eine Möglichkeit, den Inhalt einer einzelnen Datei von einem Remote-Git-Repository abzurufen? "git archive" sieht vielversprechend aus, außer dass GitHub es explizit deaktiviert hat.git show remote repository (zeigt den Inhalt einer einzelnen Datei an)

Die folgende Frage Stackoverflow hatte im Allgemeinen die richtige Idee: Retrieve a single file from a repository

In unserer Situation, wir sind im Grunde eine „git show“ zu tun suchen, außer dass wir gegen git ausführen möchten: // Github .com/SomeUser/SomeRepository.

Jetzt haben wir ein Skript, das einfach das Repository lokal klont und "Git Show" ausführt, die den Job erledigt. Wir suchen nach einem Weg um den Klon herum. Einfachheit ist in dieser Situation ideal und nicht die Verfügbarkeit des Remote-Repositorys.

Antwort

3

Was ist mit dem Parsen der Github-URL? Es sieht aus wie Sie den rohen Inhalt einer Datei bekommen können (mit curl, wget etc ...) über so etwas wie:

http://github.com/SomeUser/SomeRepository/raw/CommitId/Path/To/File 
+0

Wo 'CommitId' Name des Zweiges sein kann (aber ich glaube, zur Zeit kann es nicht einfach sein 'HEAD'). Auch GitHub hat eine API. –

+0

Ja, das würde funktionieren - aber nur für Github und andere Anbieter, die die Quelle über HTTP bereitstellen. Ich hatte auf eine allgemeinere Lösung gehofft, die nur git verwendet hat. Was wir getan haben, war das Klonen des Repository lokal und dann die Ausgabe von "Git Show" in eine Datei leiten. –