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: [email protected] | 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