monotone-devel
[Top][All Lists]
Advanced

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

RE: [Monotone-devel] Deleting branches (was: Synchronising changes in tw


From: Nathaniel Smith
Subject: RE: [Monotone-devel] Deleting branches (was: Synchronising changes in two branches ...)
Date: Wed, 1 Sep 2004 15:31:05 -0700

>===== Original Message From Peter Simons <address@hidden> =====
>My experience is that such "multi-branch constructs" are
>quite often necessary when using Monotone for more
>sophisticated tasks. In this light, I think it would be
>particularly important to have user interface options for
>deleting branches, renaming branches, and generally purging
>the database. Doing these things on the SQL level is not for
>everybody (me, for example) and achieving the desired effect
>by using temporary databases is, well, cumbersome.
>
>So I was wondering: Is it very difficult to implement these
>things? I honestly don't know, so I ask ... but if it is
>not, I would recommend doing it _soon_, because I think
>these options would really lift the usability of the tool to
>a new level.
>
>Not that I expect anyone to care what _I_ want. :-)

Well, umm, _I_ care what you think, but, err, what you're asking for is kind 
of in-principle impossible.  So I'm not sure what to say.  There's a basic 
assumption on monotone that all data is universally valid and immutable -- if 
something has ever existed, it will always exist.  Possibly you don't happen 
to have all the world's data in your particular monotone database, but that's 
just means you have partial knowledge, not that there's anything particularly 
special about that subset of the world's data.  ...Less philosophically, where 
this will bite you is netsync; unless you rename branches all at once, in 
every database everywhere, your rename is only going to last until the next 
time you pull, and then you'll _really_ have a mess.  You also lose 
substantial information; branch certs are signed by many different people, 
whose keys you hopefully don't have access to, and the identities of the 
various signers is used online by Monotone to decide whether to trust each 
commit.

Of course, maybe you're just talking about making little local screwups that 
you want to back out before doing netsync, in which case, yeah, such commands 
would be handy, though they seem like low priority... I'm actually kind of 
unclear on what you want to use this for.  Maybe it'd be more useful to 
explain what sort of "more sophisticated tasks" you're talking about, and why 
you end up needing to rearrange branches?  Maybe there's a better way to do 
this, I don't think any of us knows the best practices for dealing with 
monotone's power yet...

-- Nathaniel






reply via email to

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