如何使用外部的大量锁来清理SVN签出

时间:2013-05-23 12:52:25

标签: shell svn

目前svn cleanup根据此bug没有进入外部。从项目中移除所有结账锁的最佳方法是什么?所有这些都是外部的?

2 个答案:

答案 0 :(得分:0)

我最好的尝试是:

svn propget svn:externals |\
  grep '^[^# ]' |\
  cut -d ' ' -f 1 |\
  while read dir; do (cd $dir && svn cleanup); done

在定义外部的级别运行(这对我有用)。

答案 1 :(得分:0)

我确信有一个更好的正则表达式或格式说明符可以传递给svn status,但我最终修剪前8个字符并传递给xargs以获取大量内容(外部列表,修改过的文件等)。对于这个特例,我会这样做:

svn st | grep ^X | sed 's/........//' | xargs svn cleanup

如果我有一个已知的目录列表,我有时也会使用foreach:

for m in `cat modules`; do svn something $m; done

for m in one two three; do svn something $m; done