Recursive Checkout in Subversion
I have a project (let's say A) in subversion, but my project has a dependency on another project (let's say B) also on SVN somewhere else.
I do not want to simply 开发者_Python百科checkout B and remain stuck with a particular revision which is not the HEAD. Instead I want to make sure, whenever I checkout (update) A, it also checkout (update) B from it's own repository.
Essentially I have a SVN repository that wants to link to another SVN repository such a way. Currently, I don't have B, and all peer developers have to separately checkout B to make A compile.
As I suggested in my comment, this sounds like something that you would want to use externals for. Essentially, an external is a subversion property that you set in your repository, that has the location of a remote respository in it. The link can either be to the latest revision, or you can tag it to a particular revision (which seems to be the generally preferred approach), so that you can control when to take on new versions of the remote dependency. When you perform a local checkout/update, subversion will pull the information from the remote repository into the local location indicated by the external property.
As described in the link, you need to be careful about the way you get/set the property, since one property may include multiple links. I believe developers downloading via the external link will also need to be able to access the remote system, which may be an issue depending on your configuration / security settings.
Try to use svn external definitions.
精彩评论