在这里接下来的另一个问题,我使用--depth检查了一个副本以忽略多个gigabity旧分支,但现在我在获取我想要的文件时遇到了一些麻烦。
我的项目树:
./
|-- proj 1
| |-- branches
| `-- trunk
|-- proj 2
| |-- branches
| `-- trunk
`-- proj 3
|-- sub proj A
| |-- branches
| |-- trunk
|-- sub proj B
| |-- branches
| |-- trunk
...
所以,我做了什么:
svn checkout $url /workingcopy --depth empty
然后:
for $f in /workingcopy/*; do svn up "$f/trunk"; done
现在,我跳的东西会起作用:
cd /workingcopy/proj3; svn up --depth empty
但不是取出subproj dirs,而是退出说“revision x”
如何获取空目录中的所有文件/目录,因为如果已使用--depth签出/更新
更新:忘记提及,svn up proj3/subprojA --depth empty;
确实有效。但我有几十个这样的文件...寻找一些可以像结帐一样取出它们的东西
答案 0 :(得分:1)
SVN更新将始终将自己限制在之前完成的结帐深度。
因此,您需要运行多个'svn checkout'命令(vs svn update
)。
我将如何做到这一点:
svn checkout $url /workingcopy --depth immediates
这会让你获得所有'projX'文件夹,没有内容。
for $f in /workingcopy/*; do svn checkout $url/$f /workingcopy/$f" --depth immediates; done
这会获取projX / [trunk | tags | branches],也没有内容。
svn checkout $url/proj3/trunk /workingcopy/proj3/trunk
这将检查proj3的trunk文件夹的完整内容。