We seem to have issues with the large SVN repository we've discussed before.
The repository is configured to checkout externals, but no externals appear in the working copy. The repository has been reset, and both Checkout and Detect and Checkout -options have been tried.
I noticed that in some discussion you mentioned that externals -support might be removed from a product. As we've set up our repository structure in such a manner that some dependencies are imported to the working copy in specific locations. How the setup can be replicated for Continua without having externals -support?
We haven’t made a decision on the Externals support yet, but it’s likely it will stay. We have made some major performance improvements to the svn support since that discussion.
With externals, I believe (will have to check) that they are determined from the branch, not the root of the repository, so you may need to configure the externals for each branch. This is so that each branch can use different versions of the externals if needed.
As far as replicating externals behavior using multiple repositories, you can use the Repository Rules on each stage to determine which parts of a repo go where… eg.
Our repository has externals deep within the tree. For example at the directory /trunk/Source/Test/ there is defined an external that brings one directory of separate repository within that directory.
The external is obviously defined in the properties of the Test -directory, and regardless of the Externals -setting it’s not being checked out at the required location.
Same problem applies to me. I circumvented this by configuring multiple repositories and assemble the correct source tree with the help of the repository rules. It works but is a pain, since we have to maintain the externals twice.
The new build does not appear to change this, still the externals are missing.
Maintaining the source structure in both externals for the development and in repository rules for Continua will not be usable solution for us, as the structure would be prohibitively expensive to maintain twice.
At the moment externals are only supported if defined at the root of the branch or default path. The difficulty is finding the externals without recursing the entire repository(which can be very slow for a large repo). We will have another look at this and see if we can find another way.