Daniel Carrera <[EMAIL PROTECTED]> writes:

> Derek Scherger wrote:
>> If that commit originally added the certification directory then you
>> disapprove the commit it amounts to removing the certification
>> directory. When you then say update monotone will remove the
>> directory rather than leaving junk laying around. Monotone will
>> refuse to remove the directory if that directory contains things it
>> doesn't know about though, which is what you saw.
>
> Yeah, but what if the commit *edits* a file. I undo the commit and
> monotone reverts the edits. That's not what I want. If I want that
> I'll run "mtn revert". The way Monotone acts, I lose my work.

Yes.  Even worse in the specific case (where you accidentally add some
files or directories---you don't want monotone to attempt to remove
the files).

In git, you could do "git reset [EMAIL PROTECTED]".  That just undoes the
commit without touching the workspace at all.  (The commit's still
there for a while, should it be useful.)  Same as "darcs unrecord", I
guess?

In monotone the nearest is "mtn db kill_revision_locally ..."  but I'm
not sure whether the workspace is left in a useful state.  I fear it's
left pointing at a (now) nonexistent revision?

(I don't think anybody objects in principle to making this kind of
thing more convenient in monotone---it's just that people's interests
have been elsewhere.  Oh, see
<http://article.gmane.org/gmane.comp.version-control.monotone.devel/495>
as an old affirmation!  More recently ISTR graydon suggesting some
kind of "git rebase -i" type functionality for locally rewriting
history.)


_______________________________________________
Monotone-devel mailing list
Monotone-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/monotone-devel

Reply via email to