Hello,

I'd like to officially request a "mtn rebase" command. I could try to write it in Lua (I don't know how hard that would be, but I'd try).

Usage:  mtn rebase <revision-id>

Effect: Edit _MTN/revision to point to <revision-id>

Use Cases:

1) Use Case 1.

You make an error when committing work. Maybe you forgot to include a file. Maybe you included a file you shouldn't. Maybe there is an obvious bug and you don't want to commit a revision with a bug. You do this:

mtn rebase p:
mtn suspendd h:


2) Use Case 2.

Beth has unsaved changes and doesn't want to commit yet, but she wants the recent changes from Abe. Beth knows that merging before you commit is risky and you might lose work. Beth does this:

mtn commit     # Commit current work.
mtn rebase p:  # Go back to where we were.
mtn suspend h: # Suspend head.
mtn merge      # Now we can safely merge with Abe.

If the merge fails, Beth's work can still be recovered. In fact, Monotone devs might even want to make this the default behaviour of merge. That way you can say that in its default configuration, Monotone will not cause data loss during a merge.


I'm sure that there are other use cases.

Cheers,
Daniel.


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

Reply via email to