发现很多地方的 svn 还是用 http://svn.corp.com/team/project/ 下同时挂 branch, release, tags, trunk 的目录结构, 如果想把整个 team 的所有 project 都 checkout 下来, 显然数据量会大的想哭, 事实上大多数情况只要 co trunk 就行了, 土法就是挨个挨个 co 对应的 trunk 来看, 不过这样似乎有点土鳖
好在 svn 在 checkout 和 update 的时候是可以带一个 –depth 或 –set-depth 的参数来控制下载的目录层级. 比较简单的记录如下
# 仅目录 --set-depth emtpy # 一层 --set-depth immediates # 无限 --set-depth infinity
具体应用例子如下
$ svn co --depth immediates http://svn.corp.com/team $ for proj_name in $(ls) do; svn up ${proj_name}/trunk; done
这样就能把每个 project 下的 trunk 弄到本地了