revert: revert items in reverse-order to handle added directories

This commit is contained in:
Josh Holtrop 2013-03-20 10:08:28 -04:00
parent 8bc64da119
commit 941f487292

5
jsvn
View File

@ -1224,11 +1224,14 @@ def revert_h(argv, svn, out, config):
Popen([svn, 'revert'] + argv).wait() Popen([svn, 'revert'] + argv).wait()
return RET_OK return RET_OK
did_something = False did_something = False
p = Popen([svn, 'status'], stdout=PIPE)
for i, target in enumerate(argv): for i, target in enumerate(argv):
if target.endswith('/'): if target.endswith('/'):
argv[i] = target[:-1] argv[i] = target[:-1]
p = Popen([svn, 'status'], stdout=PIPE)
status_lines = []
for line in iter(p.stdout.readline, ''): for line in iter(p.stdout.readline, ''):
status_lines.append(line)
for line in reversed(status_lines):
m = re.match(STATUS_LINE_REGEX, line) m = re.match(STATUS_LINE_REGEX, line)
if m is not None: if m is not None:
action = line[0] action = line[0]