On Tue, Mar 15, 2011 at 10:56:52AM +0530, D, Dinoj wrote:
> Hi,
>
>
>
> When using Subversion with a large project that integrates multiple
> independent libraries and modules that come from different SVN
> repositories, it is necessary to use the svn:external mechanism to link
> to the different modules in subversion. However there are several
> problems with using externals when active development is also going on
> within the referenced module.
At lot of answers to your questions can be found in the users
mailing list archive. You should probably actively search them
in addition to waiting for answers to your post. The archive at
http://svn.haxx.se/users has a search box.
>
> Summary:
>
> 1) References must be individually managed with "svn propedit"
This should be automated if you need it at a large scale.
Don't use the properties as primary source of dependency information.
See http://svn.haxx.se/users/archive-2010-11/0097.shtml
> 2) References should be pinned to specific versions when tagging.
There's a script that helps:
https://svn.apache.org/repos/asf/subversion/trunk/contrib/client-side/svncopy
> 3) Tagging should result in a tag being created in the referenced
> repository
> 4) Branching should result in a tag being created in the referenced
> repository
Why? If the local tag contains a path and a revision in the externals
definition, there is no ambiguity.
> 5) Commits should be recursive
> 6) Merges should be recursive
Please consider other solutions. It sounds like you need something
more powerful than externals have been designed for.
Have you considered pushing dependency handling out of the version
control system, and using a build management system designed for
this task (e.g. Apache Maven) instead?
Or maybe vendor branching would help you?
http://svnbook.red-bean.com/nightly/en/svn.advanced.vendorbr.html
Maybe even in combination with foreign repository merges,
since you seem to be referencing other Subversion repositories?
http://svn.haxx.se/users/archive-2011-03/0151.shtml
Received on 2011-03-15 11:04:14 CET