[svk-users] Can only switch checkout root - WHY?

Jared Hardy jaredhardy at gmail.com
Tue Sep 11 15:07:39 EDT 2007


On 9/6/07, Rush Manbert <rush at manbert.com> wrote:
> So the checkout script checks out a top level directory, and some of its
> subdirectories are empty, but their properties contain metadata that
> points to their "real" content. We go to each directory, see if it has
> "real" content for the platform we're on (or all platforms), and switch
> it if it does.

What you are doing here is "switching" the sub-folder of the previous
checkout, separately from the rest of the WC folder hierarchy. SVK
doesn't store separate WC cache information per folder -- it has one
cache for the entire hierarchy, so this approach wouldn't work with
SVK. Only SVN and CVS pollute the working folders with cache
information in this way, which makes hacks like this easy, but common
day-to-day tasks are much slower due to the constant folder recursion
this requires.

> I tried to do the same thing using SVK, but got the error message:
>
> "Can only switch checkout root."

This is because the WC cache is per root, not per folder. Essentially
what you want to do is not a "switch", but a new "checkout root" per
sub-folder. If the sub-folders from the first checkout root are fairly
empty, or at least don't overlap file and folder names with other
branches, you should be able to do a new checkout for every sub-folder
without too much trouble. If both branches have updates to the same
files in the same folders, that will cause merge issues during client
updates.

:) Jred


More information about the svk-users mailing list