---
name: "hg-resolve"
section: "1"
platform: "linux"
package: "mercurial"
version: "7.2.4-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/hg-resolve"
---

# hg-resolve(1)

redo merges or set/view the merge status of files

## 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
