[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: Merge from branch to trunk

From: Bruce Thompson <bruce_at_otherother.com>
Date: Tue, 30 Sep 2008 08:37:55 +0530

I'm a little behind in my email, so sorry if this is badly out of
date...

On Sep 8, 2008, at 12:55 PM, John Allen wrote:

> Building you software as components would be the right solution.
> Build the app and the 3 db backends seperately,
> then assemble them as 3 distinct deliveries.
>
> App + DB backend1 = delivery1
> App + DB backend2 = delivery2
> App + DB backend3 = delivery3

I would suggest something similar except using externals to do it.

Assume your repository looks something like:

http://example.com/svn/project/trunk
http://example.com/svn/project/db1
http://example.com/svn/project/db2

Then you can create http://example.com/svn/project/delivery1 which is
initially empty but has svn:externals property set to:

app http://example.com/svn/project/trunk
backend http://example.com/svn/project/db1

delivery2 would look the same, except that backend would refer to db2.

Now your build system can assume that app is the build root and ../
backend is where the backend (whichever one is linked) lives. There's
no need for conditional compilation and the only real complication is
in setting up the delivery structure.

Oh, wait, there is one other issue, you need to be absolutely certain
that the two backends present exactly the same interface for app, i.e.
there mustn't be any backend specific code hiding in app (but then
again, that's a good practice for something like this anyway).

Hope that helps!
Bruce.

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe_at_subversion.tigris.org
For additional commands, e-mail: users-help_at_subversion.tigris.org
Received on 2008-09-30 05:20:43 CEST

This is an archived mail posted to the Subversion Users mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.