Wir haben ein Projekt, das Daten und Code in einem einzigen Mercurial-Repository gebündelt hat. Die Daten sind genauso wichtig wie der Code (er enthält Parameter für die Geschäftslogik, einige Eingaben usw.) Das Format der Datendateien ändert sich jedoch selten, und es ist ganz natürlich, die Datendateien unabhängig vom Code zu ändern. Ein Vorteil des vereinheitlichten Repositories ist, dass wir nicht mehrere Revisionen verfolgen müssen: Wenn wir jemals die Ausgabe eines vorherigen Laufs neu erstellen müssen, müssen wir nur das System auf die einzige Revisionsnummer aktualisieren, die darin gespeichert ist das AusgabeprotokollVor-und Nachteile für die Speicherung von Code und Daten in separaten Repositories
Ein Nachteil ist, dass wenn wir die Daten ändern, während mehrere Köpfe aktiv sind, können wir die Datenänderungen verlieren, wenn wir diese Änderungen nicht manuell auf jeden Kopf kopieren.
Gibt es noch weitere Vor-/Nachteile für die Aufteilung des Codes und der Daten in separate Repositories?
Das ist sehr hilfreich, danke. Ich gehe davon aus, dass Sie die Datenweitergabe manuell handhaben, indem Sie sie auf den anderen Kopf kopieren (entweder auf einmal oder wenn Sie feststellen, dass die beiden Köpfe nicht zusammengeführt werden)? – max
@max: ja, es sei denn, ich verhindere sie (http://mercurial.selenic.com/wiki/TipsAndTricks#Prevent_a_push_that_would_create_multiple_heads), nachdem Sie eine Zusammenführung versucht haben (http://kiln.stackexchange.com/questions/1696/how-to -fix-mehrere-köpfe) – VonC