Hi,

I have a directory foo with tree conflict: local add of foo and a file foo/bar, 
and then an update trying to add the same foo and foo/bar. Now, I try to revert 
using SharpSVN, which internally calls svn_client_revert_2(). I give the path 
of the directory and the file, and a depth of "files". Then I get the Exception 
Can't revert 'C:\Users\{...}\foo' without reverting children", 
SVN_ERR_WC_INVALID_OPERATION_DEPTH. 

I can reproduce that on the command line, getting the additional hint that I 
should use --depth="infinity" instead. That seems to indicate that reverts of 
added directories always need --depth="infinity", despite the fact that all 
existing children are also mentioned in the argument list.

C:\{...}\svnwc>svn status
R     C Device\Plc Logic\Application\Library Manager
      >   local add, incoming add upon update
A       Device\Plc Logic\Application\Library Manager\svnobj
Summary of conflicts:
  Tree conflicts: 1

C:\{...}\svnwc>svn revert --depth=files "Device\Plc Logic\Application\Library 
Manager" "Device\Plc  Logic\Application\Library Manager\svnobj"
svn: E155038: Try 'svn revert --depth infinity' instead?
svn: E155038: Can't revert 'C:\{...}\svnwc\Device\Plc Logic\Application\Library 
Manager' without r everting children


The strange thing is that if I change the order of arguments, it works without 
errors, but misses to restore the "svnobj" file from the repository, marking it 
as "deleted" - despite the fact that both --depth=files and the file's path are 
given on the command line.

C:\{...}\svnwc>svn revert --depth=files "Device\Plc Logic\Application\Library 
Manager\svnobj" "Dev ice\Plc Logic\Application\Library Manager"
Reverted 'Device\Plc Logic\Application\Library Manager\svnobj'
Reverted 'Device\Plc Logic\Application\Library Manager'I'm using the latest 
SharpSVN build 1.7002.2011, and command line 1.7.2 (r1207936)

C:\{...}\svnwc>svn status
D       Device\Plc Logic\Application\Library Manager\svnobj

I guess that this was the reason why I initially sorted the arguments to revert 
by "parents first"...

I always thought of operations like "revert" or "commit" to work on a set of 
input files, where the order of arguments is not important, but this seems to 
be wrong :-(

Best regards

Markus Schaber
-- 
___________________________
We software Automation.

3S-Smart Software Solutions GmbH
Markus Schaber | Developer
Memminger Str. 151 | 87439 Kempten | Germany | Tel. +49-831-54031-0 | Fax 
+49-831-54031-50

Email: m.scha...@3s-software.com | Web: http://www.3s-software.com 
CoDeSys internet forum: http://forum.3s-software.com
Download CoDeSys sample projects: 
http://www.3s-software.com/index.shtml?sample_projects

Managing Directors: Dipl.Inf. Dieter Hess, Dipl.Inf. Manfred Werner | Trade 
register: Kempten HRB 6186 | Tax ID No.: DE 167014915 


Reply via email to