gpt4 book ai didi

unison - 排除文件夹下的所有内容*但*某些文件类型(在任何嵌套级别)

转载 作者:行者123 更新时间:2023-12-04 15:27:19 24 4
gpt4 key购买 nike

使用版本 2.51.2 (ocaml 4.04.0)。

尝试在根目录中排除文件夹(称为构建),但包括在其下方任意深度以 .err 和 .out 结尾的任何文件。

结构看起来像

build/a/b/c/test/1.0/test.out
build/a/d/whatever/2.0/whatever.err
build/a/test.err

我试过了

ignore = Path build
ignorenot = Regex·arnold-build\/(.*).(err|out)⬎

...这会引发“格式错误的模式”错误。还尝试仅与此显式同步整个子目录:

ignorenot = Path a/b/c/test/

但是“测试”文件夹仍然没有同步。

如何只同步所有 .err/.out 文件,而忽略其他所有文件?

最佳答案

Unison 的“ignorenot”偏好有点违反直觉

https://www.cis.upenn.edu/~bcpierce/unison/download/releases/stable/unison-manual.html#ignore

如果一个目录被忽略,它的所有后代也将被忽略,该树下的所有内容都将被忽略并且不再检查。

Ignorenot only blocks ignores at the same level,所以你必须用成对的 ignore 和 ignorenot 覆盖所有的树,直到你想要应用的 ignorenot。例如,在您上面引用的情况下,如果您想忽略构建中的所有内容,除了 build/a/b/c/test、build/a/d/whatever,以及其中的所有内容,您的偏好配置文件应包括:

ignore = Path build/*
ignorenot = Path build/a
ignore = Path build/a/*
ignorenot = Path build/a/b
ignorenot = Path build/a/d
ignore = Path build/a/b/*
ignore = Path build/a/d/*
ignorenot = Path build/a/b/c
ignorenot = Path build/a/d/whatever
ignore = Path build/a/b/c/*
ignorenot = Path build/a/b/c/test

这样 Unison 将忽略构建文件夹中的所有内容,除了 build/a/d/whatever 和 build/a/b/c/test

关于unison - 排除文件夹下的所有内容*但*某些文件类型(在任何嵌套级别),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61995412/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com