二进制文件(在 Linux 下)没有扩展名,因此我无法使用模式排除它们。因此,当我使用 SVN add 来添加目录时,我会得到类似的内容
$ svn add recursion_vector/
A recursion_vector
A recursion_vector/rec_vec.cxx
A recursion_vector/rec_vec.h
A (bin) recursion_vector/rec_vec
这里 rec_vec
是我想排除的可执行文件。 SVN 显然将其识别为二进制。现在我可以告诉 Subversion 忽略所有二进制文件吗?
最佳答案
这有点冗长,因为它使用 find:
查找 [目标目录]\( -executable -type f\) -prune -o -print | xargs svn add --深度空
将目标目录传递给find,find将递归该目录,打印出除可执行文件(\( -executable -type f\) -prune
)之外的所有内容。如果没有 -type f
find 也会修剪目录,因为这些目录通常设置了执行位或“搜索位”。
add
上的 --深度空
选项告诉 svn 本身不要递归文件对象,因为 find 正在处理递归。
如果您喜欢结果,可以将其放入 shell 函数中,该函数允许您传入 [TARGET-DIRECTORY]
的参数。
谢谢,
扎卡里
关于svn - 如何让 SVN ADD 忽略二进制文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2191203/