monotone-devel
[Top][All Lists]
Advanced

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

Re: [Monotone-devel] Re: Two seperate setups caused problems?


From: Brian May
Subject: Re: [Monotone-devel] Re: Two seperate setups caused problems?
Date: Tue, 21 Nov 2006 13:18:35 +1100
User-agent: Gnus/5.110006 (No Gnus v0.6) XEmacs/21.4.19 (linux)

>>>>> "Daniel" == Daniel Lakeland <address@hidden> writes:

    Daniel> Suppose that you have an "attacker" who you mistakenly
    Daniel> believe to be trustworthy. This person creates their own
    Daniel> separate unrooted branch with the same name as yours, and
    Daniel> syncs with you, in the mean time the rest of your group
    Daniel> all syncs with you as well. The next morning you discover
    Daniel> that everyone has this "useless" branch that they can't
    Daniel> figure out how to delete. From now on unless they are able
    Daniel> to delete it all simultaneously, they will have to deal
    Daniel> with this merge problem.

The UI of merge needs to be improved in such a way that you can make
it work even when there are conflicts in file names.

Generally it is possible to work around this, e.g. by committing a
change that renames the files in one or more revisions before doing
the merge.

In this case you can't do that though, because the root directory you
want won't exist until after a successful merge operation.

    Daniel> I think a clobber merge, where all changes on one branch
    Daniel> are rejected and the branches are merged together is a
    Daniel> great idea. The UI is a little tricky, you want to be able
    Daniel> to specify which one clobbers the other fairly carefully
    Daniel> :-)

That would be a good idea too.

Somebody pointed out to me before that the recommended way to do this
at the moment is to commit a change to the dead revision that undoes
all its changes, and then do the merge (which will effectively make no
changes).

Unfortunately, for this case it won't work, as presumably you would
have to commit a change that undoes everything, including the "create
root directory" operation - I don't think this is possible...

This is something to watch with Monotone, if two people create the
same branch at the same time... "I thought you wanted me to create
it?" "No - I told you I was going to create it!" [...] "What do you
mean you have almost finished? I have almost finished too. We should
use my version!" "No - my version is better!" "You haven't even looked
at my version!" " No - but mine is better!"

Solving this is outside the scope of Monotone though.
-- 
Brian May <address@hidden>




reply via email to

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