私はユニゾンを使用して2台のコンピューターを同期していますが、通常、いくつかを除くすべての隠しファイルを無視したいと思います。ユニゾン設定ファイルがあります(default.prf
)次のようになります。
# Unison preferences file
# keep time stamps
times = true
auto = true
ignore = Name .*
path = Documents
path = .hgrc
path = .vimrc
ほとんどの隠しファイルを無視したいのですが、.hgrc
および.vimrc
2台のコンピューター間で同期されます。ただし、上記の設定では、それらも無視されます。それらを同期する問題を解決するにはどうすればよいですか?
http://www.cis.upenn.edu/~bcpierce/unison/download/releases/stable/unison-manual.html#prefs によると、ここでは「ignorenot」が役立つ場合があります。
この設定は、設定無視を上書きします。無視パターンの1つと一致するかどうかに関係なく、絶対に無視してはならないパスのパターンのリスト(ignoreと同じ形式)を提供します。
私は経験豊富なUnisonユーザーではないため、次の警告がここに当てはまるかどうかはわかりません。
Ignoreとignorenotのセマンティクスは、少し直感に反することに注意してください。更新を検出するとき、ユニゾンはレプリカのルートから始まり、下に向かって深さ優先のパスを調べます。各パスを調べる前に、ignoreに一致するか、ignorenotに一致しないかを確認します。この場合、このパスとそのすべての子孫をスキップします。つまり、特定のパスの親が無視パターンに一致する場合、パス自体が無視しないパターンに一致しても、その親はスキップされます。特に、プロファイルにignore = Path *を入力し、ignorenotを使用して同期する特定のパスを選択しても機能しません。代わりに、パス設定を使用して、同期する特定のパスを選択する必要があります。
これはあなたの質問から1か月以上経っています。それでも、お役に立てば幸いです。