table of contents
HG(BACKOUT) | HG(BACKOUT) |
NAME¶
hg backout - reverse effect of earlier changeset
SYNOPSIS¶
hg backout [OPTION]... [-r] REV
DESCRIPTION¶
Prepare a new changeset with the effect of REV undone in the current working directory. If no conflicts were encountered, it will be committed immediately.
If REV is the parent of the working directory, then this new changeset is committed automatically (unless --no-commit is specified).
- Note
- hg backout cannot be used to fix either an unwanted or incorrect merge.
Examples:
- Reverse the effect of the parent of the working directory. This backout
will be committed immediately:
hg backout -r .
- Reverse the effect of previous bad revision 23:
hg backout -r 23
- Reverse the effect of previous bad revision 23 and leave changes
uncommitted:
hg backout -r 23 --no-commit hg commit -m "Backout revision 23"
By default, the pending changeset will have one parent, maintaining a linear history. With --merge, the pending changeset will instead have two parents: the old parent of the working directory and a new child of REV that simply undoes REV.
Before version 1.7, the behavior without --merge was equivalent to specifying --merge followed by hg update --clean . to cancel the merge and leave the child of REV as a head to be merged separately.
See hg help dates for a list of formats valid for -d/--date.
See hg help revert for a way to restore files to the state of another revision.
Returns 0 on success, 1 if nothing to backout or there are unresolved files.
OPTIONS¶
- --merge
- merge with old dirstate parent after backout
- --commit
- commit if no conflicts were encountered (DEPRECATED)
- --no-commit
- do not commit
- --parent <REV>
- parent to choose when backing out merge (DEPRECATED)
- -r,--rev <REV>
- revision to backout
- -e, --edit
- invoke editor on commit messages
- -t,--tool <TOOL>
- specify merge tool
- -I,--include <PATTERN[+]>
- include names matching the given patterns
- -X,--exclude <PATTERN[+]>
- exclude names matching the given patterns
- -m,--message <TEXT>
- use text as commit message
- -l,--logfile <FILE>
- read commit message from file
- -d,--date <DATE>
- record the specified date as commit date
- -u,--user <USER>
- record the specified user as committer
[+] marked option can be specified multiple times