monotone-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Monotone-devel] How to split a project


From: Stephen Leake
Subject: Re: [Monotone-devel] How to split a project
Date: Tue, 23 Feb 2010 03:58:14 -0500
User-agent: Gnus/5.11 (Gnus v5.11) Emacs/22.2 (windows-nt)

address@hidden writes:

> Let's say I have some code checked in along some branch.  Over the year 
> it has evolved so that it has become two separate programs, that don't 
> share any code any more, and make sense to develop independently.
>
> Evidently, it makes sense to make two branches, one for each program.
> The obvious way is just start new branch(es) and in each branch delete 
> all the files now belonging to the other.
>
> BUT.  If years down the line, someone wants to include both these 
> programs into another project, I don't want the merge saying, let's 
> merge all these changes.  Looky here, all the files of each branch have 
> been deleted on the other.  There's nothing left!  And that someone 
> mysteriously end up with no files instaed of all the files.

I don't understand the issue. What, exactly, do you mean by "include
both these programs into another project"? In my experience, a
"project" includes code from several different mtn branches. For
example, at work I have the following mtn branches:

makerules
    shared sets of common Gnu make stuff

sal
    Stephe's Ada library - basic math stuff

opentoken
    parser generator

common
    mission-independent Goddard Dynamic Simulator stuff

gpm
    Global Precipitation Measurement mission

mms 
    Magnetosphere Multi-Scale mission

sdo
    Solar Dynamic Observatory mission

gpm, mms, sdo are the top-level projects; the others are essentially
libraries. 

mtn doesn't know about this structure; only the makefiles do.

This means you have to run update, commit, and tag (for example)
several times for each release.

It would be nice if mtn provided facilities for managing this; I've
written some in my Emacs front-end (DVC).

You appear to be implying that "include in project" means "merge into
one branch". You are right that mtn discourages/forbids this.

-- 
-- Stephe




reply via email to

[Prev in Thread] Current Thread [Next in Thread]