Mercurial > hg
view doc/README @ 28022:e397b58c0563
rebase: respect checkunknown and checkignored in more cases
checkunknown and checkignored are currently respected for updates and regular
merges, but not for certain kinds of rebases. To be precise, they aren't
respected for rebases when:
(1) we're rebasing while currently on the destination commit, and
(2) an untracked or ignored file F is currently in the working copy, and
(3) the same file F is in a source commit, and
(4) F has different contents in the source commit.
This happens because rebases set force to True when calling merge.update.
Setting force to True makes a lot of sense in general, but it turns out the
force option is overloaded: there's a deprecated '--force' option in merge that
allows you to merge in outstanding changes, including changes in untracked
files. We use the 'mergeforce' parameter to tell those two cases apart.
I think the behavior during rebases when checkunknown is 'abort' (the default)
is wrong -- we should abort on or overwrite differing untracked files, not try
to merge them in. However that currently breaks rebases by aborting in the
middle -- we need better handling for that case before we can change the
default.
author | Siddharth Agarwal <sid0@fb.com> |
---|---|
date | Wed, 03 Feb 2016 13:12:06 -0800 |
parents | 3516a4e877c1 |
children |
line wrap: on
line source
Mercurial's documentation is kept in reStructuredText format, which is a simple plain text format that's easy to read and edit: http://docutils.sourceforge.net/rst.html It's also convertible to a variety of other formats including standard UNIX man page format and HTML. You'll need to install Docutils: http://docutils.sourceforge.net/ Use the Makefile in this directory to generate the man and HTML pages.