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

如何通过SVN命令获取稀疏检出的路径详情

如何在SVN中查看稀疏检出的路径

SVN没有像Git那样专门的sparse-checkout文件来统一存储稀疏检出路径,它是通过目录的svn:depth属性来控制每个路径的检出深度的。要查看本地工作区中已拉取的非空路径,可以用以下方法:

方法1:查询目录的svn:depth属性

在工作区根目录执行以下命令,会列出所有已拉取(深度不为empty)的路径:

svn propget svn:depth -R . | grep -v '^.$' | grep -v 'empty'

命令解释:

  • svn propget svn:depth -R .:递归查询当前目录下所有子目录的svn:depth属性(该属性控制目录的检出深度)
  • grep -v '^.$':过滤掉根目录本身的条目
  • grep -v 'empty':过滤掉仍为empty(未拉取)的目录

对应你给出的场景,执行后会输出:

Parent/Children1/Children2/Children3

方法2:通过状态命令筛选

如果需要同时看到已拉取的文件和目录,可以用svn status结合过滤:

svn status --depth infinity | grep '^[ADMR?]' | awk '{print $2}'

这个命令会列出所有在本地工作区存在的版本控制下的路径(包括已修改、新增的),适合快速查看已拉取的内容。

补充说明

和Git的稀疏检出逻辑不同,SVN的稀疏检出是基于每个目录单独配置的,没有全局的配置文件记录所有拉取路径。上述命令通过查询目录属性或状态,间接获取已拉取的路径集合。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.21 11:03:15