Es scheint, dass es nicht möglich ist, genau das zu tun, was Sie möchten. Wenn Unison eine Datei mit einem Verzeichnis synchronisiert, kann Unison den Unterschied zwischen den beiden unterscheiden, aber Unison bezieht sich nicht anders auf sie (z. B. durch das Voranstellen eines /
Verzeichnisses oder etwas anderes ), sodass ein Benutzer mit einem Muster übereinstimmen kann oder der andere. Wenn Sie beispielsweise ein Verzeichnis mit dem Namen deer
und eine Datei phil
unter dem Stammverzeichnis synchronisieren ROOT
, werden diese von Unison als bezeichnet
new dir ----> ROOT/deer new file ----> ROOT/phil
Sie können nicht zwischen ROOT/deer
und unterscheiden ROOT/phil
. Hier sind jedoch einige Vorschläge
Geben Sie manuell die Verzeichnisse an, die Sie synchronisieren möchten, indem
path = deer
Sie für jedes Verzeichnis eine Zeile zu Ihrem Profil hinzufügen . Ich denke, das ist die Standardmethode, um Unison sowieso zu konfigurieren. Für alle Dateien in Ihrem Stammverzeichnis, die ebenfalls synchronisiert werden sollen, beispielsweise eine Datei mit dem Namenphil
, können Siephil
in ein Verzeichnis wechseln, das synchronisiert wird,deer/synced-root-files/
und dann einen symbolischen Link aus dieser Datei wieder in Ihr Stammverzeichnis einfügencd ROOT; ln -s ROOT/deer/synced-root-files/phil
Erfassen Sie eine Namenskonvention in Ihrem Stammverzeichnis, mit der Sie eine Übereinstimmung herstellen können. Benennen Sie beispielsweise alle und nur die Dateien, die Sie nicht synchronisieren möchten
ignore.phil
, und fügen Sie Ihrem Unison-Profil eine Zeile hinzuignore = Path ignore.*
.
Hier ist ein Link auf die Pfadangabe und Ignorieren Paths Abschnitte des Unison Handbuch so zukünftige Leser leicht finden können.