> Interactions: A Brave New World
> With the `svn switch' feature, we now have the potential to have
> working copies with "disjoint" subdirs, that is, subdirs whose
> repository url is not simply the subdir's parent's url plus the
> subdir's entry name in the parent. For example:
> $ svn checkout http://svn.collab.net/repos/trunk -d svn
> A ...
> A svn/subversion/libsvn_wc
> A svn/subversion/libsvn_fs
> A svn/subversion/libsvn_repos
> A svn/subversion/libsvn_delta
> A ...
> $ cd svn/subversion/libsvn_fs
> $ svn switch http://svn.collab.net/repos/branches/blue/subversion/libsvn_fs
> While svn/subversion/.svn/entries still has an entry for "libsvn_fs",
> if you go into libsvn_fs and look at its own directory url, it is not
> simply a child of the `subversion' directory url, but rather a
> completely different url. We call this directory "disjoint".
Ok. Has this been taken into consideration?
$ svn checkout http://svn.collab.net/repos/trunk -d svn
$ cd svn/subversion
$ svn switch http://svn.collab.net/repos/branches/blue/subversion
$ cd libsvn_fs
$ svn switch http://svn.collab.net/repos/branches/red/subversion/libsvn_fs
And to make it more interesting* maybe, replace the second switch to
$ svn switch http://svn.collab.net/repos/trunk/subversion/libsvn_fs
*) or more common?
> Commits, updates, merges, and further switch commands all need to deal
> sanely with this scenario.
> We can assume that even disjoint urls are still all within the same
> repository, because the parent of a disjoint child still has an entry
> for that child, and all working copy walks are guided by entries. In
> cases where there are wc subdirs from completely different
> repositories, there is unlikely to be such entry linkage. [NOTE: We
> will still be adding some extra information to the wc to make it
> possible to check for the rare circumstance where the parent has an
> entry for a subdir which (for whatever reason) is the result of a
> checkout from a different repository. More on that later.]
One of the 'rare' circumstances is subversion itself, where we checkout
apr in our wc from another server. Granted, this is still cvs, so
you'll have to imagine apr is in a svn repos on another server than
To unsubscribe, e-mail: email@example.com
For additional commands, e-mail: firstname.lastname@example.org
Received on Sat Oct 21 14:36:58 2006