hg resolve#
redo merges or set/view the merge status of files#
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/-ato select all unresolved files.- --toolcan 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- .origsuffix.
- `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, - Uor- R.
- path:
- String. Repository-absolute path of the file. 
Returns 0 on success, 1 if any files fail a resolve attempt.