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

Re: Expresso vendor branching

From: Sean Laurent <sean_at_neuronfarm.com>
Date: 2004-07-14 17:38:12 CEST

On Wednesday 14 July 2004 06:22 am, Mark Kikken wrote:
<TEXT DELETED>
> However, the problem with expresso is, that it is not exactly a branch.
> Expresso is a fully-functional web-application in itself, and not just
> some files in a subdirectory of my project. The idea is that you add
> classes to the expresso source to add functionality and register these
> as an application with expresso. So, it's more like writing a vendor
> branch for Expresso, than the other way around.
> To make things even more complicated, the expresso sourcecode-tree has
> the be restructured to be able to use it with the Eclipse IDE (which I
> intend to do).

Well, here's my 2 cents... *grin*

No matter where or how you preserve the Expresso source, if you restructure
the Expresso tree, it will be more difficult to bring the changes from a new
version of Expresso.

With that out of the way, why ~don't~ you treat it just like a vendor branch?

/repo
  /vendor
    /expresso
      current/

Import your original version of Expresso into /repo/vendor/expresso/current.
Commit it. Tag it by copying it to something like /repo/vendor/expresso/5.5.
Then copy it into your main development line (let's call that trunk). Add
your custom code inside the directory for expresso or underneath it...
whatever works for Expresso:

/repo
  /trunk
    /expresso
      /mycode
  /vendor
    /expresso
      current/
      5.5/

Okay, now what happens when you want to bring Expresso 5.6? Use one of the
handy Perl scripts to merge between your new copy of the Expresso 5.6 source
and /repo/vendor/expresso/current. Once you resolve all conflicts, tag it as
/repo/vendor/expresso/current/5.6. Then do a merge between expresso/current
and trunk/expresso.

Of course, if you have restructured the Expresso code, that will make
importing new versions very difficult to automate and you will probably have
to do the merge by hand.

Hope this helps.

-Sean

------------------------------
The only difference between a rut and a grave is the depth.
------------------------------

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Wed Jul 14 17:38:32 2004

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