颠覆;只检查多个项目的主干

时间:2010-09-13 09:10:22

标签: shell svn svn-checkout

我在svn中有这样的目录结构:

  • 项目A.
    • 分支
    • 标记
    • 躯干
  • 项目B.
    • 分支
    • 标记
    • 躯干

...

我想只检查所有这些项目的主干目录。这些项目大约有400种,因此手动检查中继将不是一种选择。

我的第一个猜测是使用svn列表,但是我的shell脚本编写技巧达不到标准,我确定如何创建相应的目录并附加“trunk”并进行结帐。

有谁愿意指出我正确的方向?

TL:DR;

  • svn list产生类似'project_a'的内容。
  • 我想将'project_a / trunk'签出到'project_a'。

2 个答案:

答案 0 :(得分:2)

您可以将项目列表存储到文件(projects_list),然后运行此脚本:

for p in $(cat projects_list); do
    mkdir $p
    svn co "$url/$p/trunk" $p
done

答案 1 :(得分:0)

以下是使用深度标记执行此操作的方法:

echo Getting Projects the folder structure
svn co http://www.therepo.com/projectsParentFolder --depth immediates

echo Getting the structure for each Project
for /f %%f in ('dir /b .\projectsParentFolder') do svn co http://www.therepo.com/projectsParentFolder/%%f .\projectsParentFolder\%%f --depth immediates

echo Getting the trunk for each Project
for /f %%f in ('dir /b .\projectsParentFolder') do svn co http://www.therepo.com/projectsParentFolder/%%f/trunk .\projectsParentFolder\%%f\trunk --depth infinity