You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用TortoiseSVN及命令行SVN实现递归忽略与例外设置?

SVN忽略规则配置方案

针对你提出的三个忽略需求,SVN本身没有直接支持“全局忽略+特定目录例外”的通配符语法,但可以通过分层配置目录属性来实现,TortoiseSVN和命令行客户端都支持该操作,具体步骤如下:

a) TortoiseSVN实现步骤

  1. 配置根目录忽略规则
    右键仓库根目录 → 选择「TortoiseSVN」→「属性」,在属性窗口点击「新建」,选择「svn:ignore」,在编辑框中输入:

    temp/
    temp
    

    这会忽略根目录下的temp/文件夹,以及根目录直接子级目录中的temp文件夹。

  2. 设置属性继承
    回到根目录的属性窗口,新建「svn:inherit-properties」属性,值填写svn:ignore。这会让根目录下所有子目录默认继承根目录的忽略规则,实现“任意深度目录忽略temp”的需求。

  3. 覆盖bar目录的忽略规则
    右键/bar目录 →「TortoiseSVN」→「属性」,删除已继承的svn:ignore属性(或直接设置为空),同时删除svn:inherit-properties属性。这样/bar及其所有子目录都不会应用忽略temp的规则。

b) 命令行SVN客户端实现步骤

  1. 配置根目录的svn:ignore属性

    svn propset svn:ignore "temp/
    temp" /path/to/your/repo/root
    
  2. 开启根目录的属性继承

    svn propset svn:inherit-properties "svn:ignore" /path/to/your/repo/root
    
  3. 清除bar目录的忽略属性与继承规则

    svn propdel svn:ignore /path/to/your/repo/bar
    svn propdel svn:inherit-properties /path/to/your/repo/bar
    
  4. 提交属性变更

    svn commit -m "Set ignore rules: ignore temp folders except under /bar" /path/to/your/repo/root /path/to/your/repo/bar
    

注意事项

  • 如果某个temp文件夹已经被加入版本控制,需要先执行svn delete --keep-local将其从版本库中移除,再设置忽略规则才会生效。
  • svn:inherit-properties是SVN 1.8及以上版本才支持的特性,若你的SVN版本低于1.8,需要手动给每个非bar的子目录单独设置svn:ignore规则。

内容的提问来源于stack exchange,提问作者STenyaK

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.01 07:43:12