Alexey Varlamov wrote:
I have a natural aversion to svn:externals since it messes up the SVN
version control. When you copy a resource with an externals property to
a new branch, the branch has a copy of the property (not what it points
to). This makes it too easy to modify the HEAD when you think you are
working on a branch, and makes the branch mutable from the HEAD.
The SVN manual covers this issue; they say "commit" command
specifically ignores external subdirectories unless they are
explicitly pointed.
Right, but unless you know you are in an externals subdirectory it is
too easy to, say, cd into the java 6 branch class lib concurrent module
standard directory and make a change that gets picked up by the java 5
branch. We know about that case, but if there are a lot of externals
pointing around the place you can miss these hidden dependencies.
BTW similar issue may happen in a "mixed" workspace with
subdirectories switched to different branches.
Yes, and for the same reason I would also be unhappy if we switched at
levels below the working_* directories. It just gets too hard to manage
multiple branches of the code.
Regards,
Tim