То есть вы в основном хотите удалить все файлы с версиями и без изменений?
Вы можете создать скрипт, который перебирает все файлы и вызывает для них «svn status», удаляя файлы, в которых «svn status» выдает пустой вывод ...
РЕДАКТИРОВАТЬ: наивный скрипт Python для удаления файлов, которые не были изменены. Сохраняет неверсионные и локально модифицированные файлы ... это медленно , было бы лучше выдать "svn stat -v" и проанализировать это. Скрипт удаляет только файлы, он не касается папок.
import os
from subprocess import *
def isUnchangedInRepo(name):
output = Popen(["svn","stat",name], stdout=PIPE).communicate()[0]
return len(output) == 0
for dirname, dirnames, filenames in os.walk('.'):
for filename in filenames:
testfile = os.path.join(dirname, filename)
if(testfile.find("\\.svn") == -1) and isUnchangedInRepo(testfile):
print testfile
# os.remove(testfile)