ignore 规则
通过在 sync_dir 指定的目录下创建 .qrsignore 或 .qrsignore.txt 文件,qrsync、qrsbox、qrsboxcli 可以选择忽略某些文件和文件夹。
文件内容为上传文件过程中需要忽略的项目匹配模式。若某文件名被匹配则忽略该文件,若某目录名被匹配则忽略该目录下所有文件以及子目录。
路径
- 首位为 /:
- 当首位为 / 时,只会匹配从上传目录开始的绝对路径
- /a.txt 仅会匹配 a.txt,不会匹配 b/a.txt
- /*.txt 仅会匹配 a.txt、b.txt,不会匹配 b/a.txt
- 首位不为 /:
- 当首位不为 / 时,只要路径中有一部分和模式匹配就可以
- b/a.txt 会匹配 c/b/a.txt、d/c/b/a.txt 等
- a.txt 会匹配 a.txt、b/a.txt 等所有文件名为 a.txt 的文件
- *.txt 会匹配 a.txt、b/c.txt 等所有文件名以 .txt 为后缀的文件
示例:
文件名 | /a.txt | /*.txt | b/a.txt | a.txt | *.txt | 操作 |
---|---|---|---|---|---|---|
a.txt | 匹配 | 匹配 | - | 匹配 | 匹配 | 忽略 |
b.txt | - | 匹配 | - | - | 匹配 | 忽略 |
c.txt | - | 匹配 | - | - | 匹配 | 忽略 |
b/a.txt | - | - | 匹配 | 匹配 | 匹配 | 忽略 |
b/b.txt | - | - | - | - | 匹配 | 忽略 |
b/c.txt | - | - | - | - | 匹配 | 忽略 |
c/b/a.txt | - | - | 匹配 | 匹配 | 匹配 | 忽略 |
d/c/b/a.txt | - | - | 匹配 | 匹配 | 匹配 | 忽略 |
foo.png | - | - | - | - | - | 上传文件 |
bar.jpg | - | - | - | - | - | 上传文件 |
通配符
- * 匹配任意非路径分隔符的符号,如:b/*.txt 匹配 b/a.txt,但是不匹配 b/c/a.txt。
- ** 匹配任意字符,包括路径分割符号,如:b/**.txt,匹配 b/c/a.txt。
非模式
当匹配模式以 ! 开头则该模式为非模式,与非模式匹配的文件就不会被忽略不论是否与其他模式匹配,比如:
- 当模式存在 !1.txt、*.txt 这两个,将会匹配除了 1.txt 文件外的所有以 .txt 结尾的文件。
- 当要表达首位 !的时候可以用 \!表示,比如想忽略名为 !.txt 的文件,匹配模式则为 \!.txt。
注释
# 开头的行为注释,不会执行匹配。
Windows 环境
考虑到 Windows 下,路径分隔符和转义字符 \ 冲突,所以在 windows 里面的路径分割符跟 unix 一样用 / 表示。
示例
使用 .qrsignore 文件:
# 忽略所有exe后缀的文件
*.exe
# do_not_ignore_me.exe不忽略,要上传
!do_not_ignore_me.exe
# 忽略目录dir下的所有文件
dir/
文档反馈
(如有产品使用问题,请 提交工单)