2012-04-10 7 views
4

Ich habe ein Git-Repo mit einer Reihe von Quellcode, und wenn das kompiliert wird eine Reihe von Binärdateien produziert. Die Binärdateien sind in geeigneten .gitignore-Dateien aufgeführt und nicht im Repo enthalten.Ignorieren .gitignore beim Ausführen von git-Archiv

Allerdings möchte ich eine Quelle + Binärdateien Snapshot zipfile meiner Repo, die alle Binärdateien enthält, aber nicht Dinge wie die .git/Verzeichnis zu verteilen.

Es wäre wie die natürliche Art und Weise scheinen einen Schnappschuss zipfile erstellen würde

git archive -o archive.zip 

Aber das schließt nicht jede der Binärdateien sein, die in .gitignore sind.

Ideen, wie ich das mit Git-Archiv erreichen kann? (Meine Arbeit besteht darin, manuell ein Zip-Archiv zu erstellen, das alles andere als das .git/-Verzeichnis enthält)

Antwort

1

Ich glaube nicht, dass Sie 'git archive' für das verwenden können, was Sie erreichen möchten . 'git archive' arbeitet mit commits und Ihre Binärdateien sind einfach nicht sichtbar. Hinweis: 'git archive' ist so commit-zentrisch, dass Sie git archive direkt in einem leeren Repository verwenden können, in dem keine quellkontrollierten Dateien explizit existieren.

0

Wie GoZonerstates, ist dies keine Aufgabe, die mit git archive getan werden konnte.

Verwenden Sie die richtigen Tools für die richtigen Aufgaben. Ich mache auch etwas sehr ähnliches und habe ein Perl-Skript, das mein Archiv mit den Quellen und dem kompilierten Zeug erstellt.

Einfach alles zippen bis die bei der Erstellung erstellt wurde wahrscheinlich nicht, was Sie wollen:

  • Wenn Sie eine Bibliothek an jemanden übergeben wollen, er nur in der Bibliothek interessiert sind und einige Header in der Lage sein, die Bibliothek zu benutzen. Es ist nicht nötig, Objektdateien und andere Zwischenprodukte zu archivieren.

  • Wenn Sie möchten, dass Ihre Zielgruppe in der Lage ist, die Bibliothek selbst zu erstellen, schließen Sie die Quellen, die benötigten Projektdateien und möglicherweise eine vordefinierte Binärdatei ein.

  • ...

Also, aus meiner Erfahrung würde ich empfehlen, die Skriptsprache Ihrer Wahl zu treffen und die vorgesehenen Mechanismen der Sprache verwenden, um Ihre Verteilung zu erstellen. Wenn Sie dies tun, können Sie in Ihrer Distribution auch eine andere Ordnerstruktur erstellen, die nicht mit der Struktur auf Ihrer Festplatte übereinstimmen muss.

die git Revision beachten, aus dem das Archiv erstellt wurde, können Sie die Revision in der Zip-Datei Kommentare speichern könnte:

screenshot

+0

Wie Sie den Kommentar mit git-Archiv speichern? – alexis

+0

@alexis: Sie können nicht. Das gezeigte Archiv wurde mit einem Perl-Skript erstellt. – eckes

Verwandte Themen