On Wed, Jan 25, 2012 at 10:29 AM, Bert Huijben <bert_at_qqmail.nl> wrote:
[ ... ]
> The 'svn rm' case that opened this thread was the first case where libsvn_wc
> would be involved and this opens the door to many other changes.
> If we change svn rm, then it no longer matches 'svn revert' for these cases.
Actually, thinking more about it, there is a way to fix this issue in
the client itself, but it's really hairy (and all other clients will
have to implement the same trick of course): convert the 'svn rm' into
an 'svn rm --keep-local' for every case-shadowed wc item. The check
for finding a case-shadowed wc item is already present in cmdline.c
(part of #3865). All we'd have to do then is making sure to call the
lower levels with a keep-local flag for all the case-shadowed items in
the target list (so potentially splitting up the 'svn rm' execution in
two calls, one with keep-local=TRUE, and another with
keep-local=<whatever the user said>). That's all :-).
(I'm not suggesting that we do this, just pointing out the
possibility. It's a commandline-only fix, all other clients are on
their own then ... (but we could document this suggestion in the
libsvn_client API that takes these targets ...))
Received on 2012-01-25 13:33:26 CET