monotone-devel
[Top][All Lists]
Advanced

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

Re: [Monotone-devel] bidirectional CVS gateway


From: Nathaniel Smith
Subject: Re: [Monotone-devel] bidirectional CVS gateway
Date: Fri, 10 Dec 2004 10:12:13 -0800
User-agent: Mutt/1.5.6+20040907i

On Fri, Dec 10, 2004 at 12:44:35PM +0100, Christof Petig wrote:
> [intentionally breaking deep the mail threading]
> 
> graydon hoare schrieb:
> >let's just focus on real bugs and easily-agreed-on
> >improvements for a while.
> 
> I'm sorry I can't drop this topic. Switching to monotone to do real 
> _work_ would be dramatically easier if we had a monotone CVS 
> synchronization.

I don't think these two things are incompatible; it turns out that
trying to solve linearization stuff for all of Monotone is a rat's
hole, but with some care it should be perfectly possible to do
something that works just for CVS synchronization...

For instance, something like: whenever you push a revision into
CVS/pull a CVS state out into a revision, mark that revision with some
cert.  The point of this cert is to record enough information to let
you later reconstruct the mapping between CVS and Monotone revisions.

When you want to synch between CVS and Monotone, proceed in two
stages.  First, find the last Monotone revision with such a cert, call
it A.  Next, if further changes have been made in CVS, pull them out
and commit them as children of A.  Now, again find the last Monotone
revision with such a cert, call it B.  If it has no children, then
stop.  If it has 1 or more children, then pick a child
semi-arbitrarily, push that into CVS, name that child B, and repeat.

This is all vague and there are lots of details to work out, but maybe
it gives you some ideas...

-- Nathaniel

-- 
"...All of this suggests that if we wished to find a modern-day model
for British and American speech of the late eighteenth century, we could
probably do no better than Yosemite Sam."




reply via email to

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