[Bug 3852] New: Allow updating across branches with uncommitted changes

mercurial-bugs at selenic.com mercurial-bugs at selenic.com
Mon Mar 11 14:56:29 CDT 2013


http://bz.selenic.com/show_bug.cgi?id=3852

          Priority: normal
            Bug ID: 3852
                CC: mercurial-devel at selenic.com
          Assignee: bugzilla at selenic.com
           Summary: Allow updating across branches with uncommitted
                    changes
          Severity: feature
    Classification: Unclassified
                OS: Linux
          Reporter: luto at amacapital.net
          Hardware: PC
            Status: UNCONFIRMED
           Version: unspecified
         Component: Mercurial
           Product: Mercurial

I frequently make some changes, save them, realize I'm on the wrong parent, and
then want to switch (topological, not named) branches to test and commit. 
Currently, I do it like this:

 1. Find a common ancestor between parent and tip.
 2. Update to the common ancestor.
 3. Update to tip.

This is silly.  Steps 2 and 3 ought not to be necessary and serve no real
purpose.  In fact, they can introduce spurious conflicts.  Other approaches
include:

 * Use mq (qnew, qpop, update -c, qpush)
 * Graft (commit, update -c, graft)

All of these are overcomplicated ways to do something rather simple and
nondestructive.  Would a new option to update by three way merge across
branches (-m?) be appropriate?

-- 
You are receiving this mail because:
You are on the CC list for the bug.


More information about the Mercurial-devel mailing list