HG(RESOLVE)

NAME
hg resolve - redo merges or set/view the merge status of files

SYNOPSIS

hg resolve [OPTION]... [FILE]...

DESCRIPTION

Merges with unresolved conflicts are often the result of non-interactive merging using the internal:merge configuration setting, or a command-line merge tool like diff3. The resolve command is used to manage the files involved in a merge, after hg merge has been run, and before hg commit is run (i.e. the working directory must have two parents). See hg help merge-tools for information on configuring merge tools.

The resolve command can be used in the following ways:

•   hg resolve [--re-merge] [--tool TOOL] FILE...: attempt to re-merge the specified files, discarding any previous merge attempts. Re-merging is not performed for files already marked as resolved. Use --all/-a to select all unresolved files. --tool can be used to specify the merge tool used for the given files. It overrides the HGMERGE environment variable and your configuration files. Previous file contents are saved with a .orig suffix.

•   hg resolve -m [FILE]: mark a file as having been resolved (e.g. after having manually fixed-up the files). The default is to mark all unresolved files.

•   hg resolve -u [FILE]...: mark a file as unresolved. The default is to mark all resolved files.

•   hg resolve -l: list files which had or still have conflicts. In the printed list, U = unresolved and R = resolved. You can use set:unresolved() or set:resolved() to filter the list. See hg help filesets for details.

Note
    Mercurial will not let you commit files with unresolved merge conflicts. You must use hg resolve -m ... before you can commit after a conflicting merge.

Template:

The following keywords are supported in addition to the common template keywords and functions. See also hg help templates.

mergestatus
    String. Character denoting merge conflicts, U or R.

path
    String. Repository-absolute path of the file.

    Returns 0 on success, 1 if any files fail a resolve attempt.

OPTIONS

-a, --all
    select all unresolved files

-l, --list
    list state of files needing merge

-m, --mark
    mark files as resolved

-u, --unmark
    mark files as unresolved

-n, --no-status
    hide status prefix

--re-merge
    re-merge files

-t,--tool <TOOL>
    specify merge tool

-I,--include <PATTERN[+]>
    include names matching the given patterns

-X,--exclude <PATTERN[+]>
    exclude names matching the given patterns

-T,--template <TEMPLATE>
    display with template

    [+] marked option can be specified multiple times