Unser Projekt hat ungefähr 11 GB, von denen 10 Binärdaten (PNG-Bilder) sind. Folglich dauert eine git diff
oder git status
-Operation mehr als eine Minute. Zum Glück sind alle Dateien in einem Ordner mit dem wunderbaren Namen getrennt data
. Die Aufgabe lautet "Vermeiden Sie das Komprimieren, Vergleichen und andere kostspielige Vorgänge mit Binärdateien."
Es wurde überlegt, das Projekt in zwei Repos aufzuteilen. Dann
data
wäre ein externes Repo, das vom Hauptquellcode-Repo ausgecheckt wird. Es wurde beschlossen, dass der Aufwand für die Synchronisierung der Repos zu hoch wäre, insbesondere für die Künstler, die mit den Datendateien arbeiten.Das explizite Erklären von git, dass diese Dateien binär sind , wobei Dateien von diffs ausgeschlossen wurden, aber diese scheinen nur eine Teillösung für die Frage zu sein.
Ich denke, dass Git-Attribute die Lösung sind, aber wie? Oder gibt es eine bessere Architektur als ein monolithisches Repo?