RE: svn commit: r946661 - /subversion/trunk/subversion/libsvn_wc/adm_crawler.c
From: Bert Huijben <bert_at_qqmail.nl>
Date: Fri, 21 May 2010 11:42:13 +0200
> -----Original Message-----
I'm not sure if this really fixes this issue for the common use cases. (And it introduces libsvn_client specific support for updates in a libsvn_wc common function that is used for more than just this update scenario. E.g. svn status -u).
The current code (well; before your patch) applies changes on svn:externals on update. By comparing the old and new versions of the svn:externals property it can add/remove/switch externals.
Your new code can just add externals, and if the directory is later reverted the externals will stay as a detached working copy. (And if a different svn:external value is set for a directory you will get some hard to resolve issues, that you would never get into with just the old code).
I think fixing issue ##2267 needs a good design instead of a quick and dirty fix in one of the fundamental editor helper functions. (E.g. does this break backwards compatibility of our APIs somewhere?)
Looking further in the implementation: Why does the code walk the children of an added noded, but not the children of the children?
This is an archived mail posted to the Subversion Dev mailing list.