monotone-devel
[Top][All Lists]
Advanced

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

Re: [Monotone-devel] Synchronising changes in two branches WITHOUT the f


From: Richard Levitte - VMS Whacker
Subject: Re: [Monotone-devel] Synchronising changes in two branches WITHOUT the full history?
Date: Wed, 01 Sep 2004 13:00:51 +0200 (CEST)

In message <address@hidden> on Wed, 1 Sep 2004 17:55:59 +0800, Matt Johnston 
<address@hidden> said:

matt+monotone> I'm not totally sure, though I _think_ the following
matt+monotone> might work. I could be entirely wrong though - please,
matt+monotone> someone tell me if I am :)
matt+monotone> 
matt+monotone> Basically, you set up a 'fake' ancestry so that the
matt+monotone> 0.9.7 snapshot is a direct ancestor of 0.9.8-dev, and
matt+monotone> go from there.
[... mechanics deleted ...]

Hmm, yeah, OK, I think I understand how that would be set up.  I
actually suspect that the "monotone del ." part isn't really needed,
except to take care of renames and files that exist in 0.9.7 but not
in 0.9.8-dev, which can be done manually if you know what you're doing
(I think I do when it comes to OpenSSL :-)).

matt+monotone> Now, check out openssl.097 in a new dir. Make your
matt+monotone> RFC3820 changes here, committing to openssl.097. I
matt+monotone> _think_ you should now be able to do
matt+monotone> 
matt+monotone> monotone propagate openssl.097 openssl.098

That looks right.

matt+monotone> It might be worth also committing/adding-a-cert-for
matt+monotone> openssl.097.orig as the original snapshot, so if you
matt+monotone> get a new snapshot, you can use a similar 'propagate'
matt+monotone> to track changes.

This is the part that worries me the most.  Let's say I end up having
the following branches, done the way you pictured:

 openssl.097.import     Import branch for 0.9.7-stable.
 openssl.098.import     Import branch for 0.9.8-dev, having the first
                        commit to openssl.097.import as ancestor.
 openssl.097.rfc3820    My hacking branch, branching off from the head
                        of openssl.097.import.  I regularly propagate
                        the changes made here to the openssl.098.rfc3820.
 openssl.098.rfc3820    The branch to which I propagate changes from
                        openssl.098.import and from openssl.097.rfc3820.

With this setup, I have the following freedoms:

 - to import new snapshots of 0.9.8-dev into the openssl.098.import
   branch.
 - to propagate changes in openssl.098.import to openssl.098-rfc3820.
 - to propagate changes in openssl.097.rfc3820 to openssl.098-rfc3820.

However, if I import a new 0.9.7-stable snapshot into the
openssl.097.import branch, any subsequent propagations from that
branch will include those changes.  This is OK when I propagate from
openssl.097.import to openssl.097.rfc3820.  However, the further
propagation from openssl.097.rfc3820 to openssl.098.rfc3820 will also
contain those changes, and that's not necessarily a good thing, as
there is some development going on in 0.9.7 that doesn't (yet) belong
in 0.9.8.  That's where I get in trouble...

Cheers,
Richard

-----
Please consider sponsoring my work on free software.
See http://www.free.lp.se/sponsoring.html for details.

-- 
Richard Levitte                         address@hidden
                                        http://richard.levitte.org/

"When I became a man I put away childish things, including
 the fear of childishness and the desire to be very grown up."
                                                -- C.S. Lewis




reply via email to

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