我想将SVN存档的每个版本签出到自己的目录。
我措辞不好的最后一个问题提示答案告诉我创建一个重复的SVN存储库,但是,这显然不是我想要的。
我不是在寻找重复的SVN存档 - 每个版本都必须放在自己的文件夹中。
答案 0 :(得分:1)
我不确定你为什么要这样做,但编写某种脚本应该很容易。您只需要弄清楚HEAD修订号是什么,然后编写检查脚本。例如使用php(导致它最容易写下我的头脑):
$head = 5042;
$base = 1;
$basepath = "/path/to/folder";
$svnbin = '/usr/bin/svn';
$svnurl = 'http://svn.whatever.com/path/to/repo';
$cmdtpl = "$svnbin co -r%d $svnrl %s";
for ($n = $base; $n <= $head; $n++) {
$dir = $basepath . '/r' . $n; // folders names like r1, r2, etc.
$cmd = sprintf($cmdtpl, $n, $dir);
exec($cmd, $out, $ret);
// blow up if it fails!
if($ret) {
throw new Exception("Command ($cmd) failed with return value \"$ret\".");
}
}