[Bug 4835] New: Option to preserve empty changesets (i.e., --keepempty).

mercurial-bugs at selenic.com mercurial-bugs at selenic.com
Mon Sep 21 17:54:51 UTC 2015


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

            Bug ID: 4835
           Summary: Option to preserve empty changesets (i.e.,
                    --keepempty).
           Product: Mercurial
           Version: unspecified
          Hardware: All
                OS: All
            Status: UNCONFIRMED
          Severity: feature
          Priority: wish
         Component: rebase
          Assignee: bugzilla at selenic.com
          Reporter: bamccaig at gmail.com
                CC: mercurial-devel at selenic.com

For some workflows it makes sense to skip changesets that introduce no changes
(for example, the changes might have been grafted or merged or otherwise
already exist on the new base). However, there are also workflows where the
empty changeset exists by design and is wanted to be preserved. The metadata
itself may be useful.

A --keepempty option might be useful to communicate the user's intentions.
Alternatively, it might be useful to assume with --keepbranches that an empty
changeset that changes the branch name should be preserved (by some
definitions, it's not empty because it does change something). This is
particularly useful where named branches are being used and the head changeset
of the rebase does nothing other than change the branch name. Losing that
changeset would also lose that named branch.

For backwards compatibility a configuration option to enable this behavior
would be welcomed instead of making it the new default. A command line option
would be useful as well for one-time use: --keepemptybranchnamechangealistic
perhaps? >:) I don't think that --keepbranches and --keepempty alone would
capture all of the use cases.

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


More information about the Mercurial-devel mailing list