On 11/23/2010 8:09 AM, David Weintraub wrote:
>
> I find the best way is to just make BAR a releasable subproject. You
> could zip up its source code or compile bar into some sort of object
> file that FOO can use (a jarfile for a Java project, or a *.dll or
> *.so for C or C++ projects). Then, I'd have my build file copy the
> correct version of bar down from the release repository as part of my
> build process. That way, you don't have to maintain svn:externals, or
> be limited by the fact that svn:externals projects have to live in the
> same repository as the master project.
>
> The svn:externals seemed like such a good idea when I first heard of
> Subversion, but I quickly discovered that it can be very difficult to
> implement correctly.
You just have to treat the sub-components the same as the top level
project. That is, make a release branch for them, and tag the final
release versions. Then in the top level project release branches, change
the externals to reference the appropriate tag for the released
components if they weren't there already.
--
Les Mikesell
lesmikesell_at_gmail.com
Received on 2010-11-23 16:46:32 CET