Es tut mir leid, wenn das anderswo behandelt wird, aber ich kann die Antwort nicht finden.
Ich habe ein nacktes Repo, bare.git genannt, welches das Repository ist, aus dem die Dev-Repos geklont werden. Es funktioniert alles gut.
Ich möchte wissen, woher blank.git die Quelldateien bezieht. Werden sie als Binärdateien in der bare.git Dateistruktur gespeichert? Ich kann bare.git an einen anderen Ort verschieben und immer noch Repos daraus klonen, also muss die Quelle in irgendeiner Weise portabel sein. Oder speichert es absolute Netzwerkverweise auf die Dateien?
Es gibt drei Hauptgründe, warum ich diese Informationen kennen sollte:
Ihre Quelldateien werden als Teil des Index innerhalb der bare.git-Dateistruktur gespeichert. Dies ist der gleiche wie im .git-Verzeichnis in einem Ihrer Klone.
Also, es ist am besten, vollständige bare.git zu sichern.
Sie können die aktuelle Version zum Testen erhalten, indem Sie Ihr leeres Repository klonen.
Warum sollten Sie nicht alle Repos sichern?
Siehe Das Git-Objektmodell und Wie Git Objekte speichert .
Sichern Sie den gesamten bare.git Ordner, um ihn nicht zu verpassen, Sie könnten ihn jederzeit später klonen.
Wenn Sie den Quellcode testen möchten, müssen Sie ihn klonen. Der Artikel Die Verwendung von Git zum Verwalten einer Website zeigt Ihnen eine Möglichkeit, mit dem Problem umzugehen, indem Sie auschecken das ganze Repo nach jedem Push auf bare.git , natürlich automatisch. Dieser Code sollte getestet werden (es sei denn, Sie möchten dies tun, bevor Sie auf bare.git, pre-commit oder pre-receive drücken.