Gemäß der Dokumentation Liquibase:Liquibase: Wie identifiziert man nur die Change-Set-Basis-ID?
Jeder ChangeSet Tag durch die Kombination der „id“ Tag, der „Autor“ Tag und der Changelog-Datei Classpath Namen identifiziert wird.
Dies scheint eine sehr schlechte Design-Wahl zu sein. Die Identität eines Änderungssets sollte nicht mit seinem Standort verknüpft sein. Wenn das Änderungsprotokoll über die automatische Anwendungsbereitstellung ausgeführt wird, würde das Änderungsset von einem Klassenpfad innerhalb einer JAR-Datei kommen. Wenn ich die gleichen Änderungssätze manuell von der Befehlszeile aus ausführen möchte, kann der Speicherort das aktuelle Verzeichnis sein.
In diesem Fall versucht Liquibase, anstatt den Changeset anhand seiner ID zu erkennen, zweimal. Gibt es eine Möglichkeit, dieses Verhalten zu ändern und Änderungssets nur anhand der angegebenen ID zu identifizieren?
Dies scheint jedoch nur mit XML-Änderungsprotokollen verwendbar zu sein. Wissen Sie, ob es mit SQL Changelogs verwendet werden könnte? –
Nein, soweit ich weiß. – binoternary