##// END OF EJS Templates
diff: add --inverse option...
diff: add --inverse option Most of the time, one can reverse a diff by swapping the revisions passed with -r but it happens that if you use the global -R, and diff against the tip of the current repo, you can't swap the revisions. One use-case for that is reviewing changes from a bundle before unbundling. One could also pipe the output of `hg diff` to a command line filter that reverses the diff, but that would remove the benefit from color diffs. Therefore, having an option in `hg diff` to reverse a diff is a good thing. The option flag selection was tricky. GNU patch uses -R/--reverse but -R is already used as a global option and --reverse would make --rev ambiguous.

File last commit:

r8709:b9e0ddb0 default
r9725:3f522d2f default
Show More
test-commit.out
117 lines | 2.7 KiB | text/plain | TextLexer
% commit date test
abort: empty commit message
abort: impossible time zone offset: 4444444
abort: invalid date: '1\t15.1'
abort: invalid date: 'foo bar'
abort: date exceeds 32 bits: 111111111111
% commit added file that has been deleted
nothing changed
abort: bar: file not found!
adding dir/file
dir/file
committed changeset 2:d2a76177cb42
adding dir.file
abort: dir: no match under directory!
abort: bleh: no match under directory!
abort: dir2: no match under directory!
dir/file
committed changeset 3:1cd62a2d8db5
abort: does-not-exist: No such file or directory
abort: baz: file not tracked!
abort: quux: file not tracked!
dir/file
committed changeset 4:49176991390e
% partial subdir commit test
adding bar/bar
adding foo/foo
% subdir log 1
changeset: 0:6ef3cb06bb80
user: test
date: Mon Jan 12 13:46:40 1970 +0000
files: foo/foo
description:
commit-subdir-1
% subdir log 2
changeset: 1:f2e51572cf5a
tag: tip
user: test
date: Mon Jan 12 13:46:41 1970 +0000
files: bar/bar
description:
commit-subdir-2
% full log
changeset: 1:f2e51572cf5a
tag: tip
user: test
date: Mon Jan 12 13:46:41 1970 +0000
files: bar/bar
description:
commit-subdir-2
changeset: 0:6ef3cb06bb80
user: test
date: Mon Jan 12 13:46:40 1970 +0000
files: foo/foo
description:
commit-subdir-1
% dot and subdir commit test
% full log
changeset: 1:d9180e04fa8a
tag: tip
user: test
date: Sat Jan 24 03:33:20 1970 +0000
files: foo/plain-file
description:
commit-foo-dot
changeset: 0:80b572aaf098
user: test
date: Mon Jan 12 13:46:40 1970 +0000
files: foo/plain-file
description:
commit-foo-subdir
% subdir log
changeset: 1:d9180e04fa8a
tag: tip
user: test
date: Sat Jan 24 03:33:20 1970 +0000
summary: commit-foo-dot
changeset: 0:80b572aaf098
user: test
date: Mon Jan 12 13:46:40 1970 +0000
summary: commit-foo-subdir
adding a
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
created new head
merging a
0 files updated, 1 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
% should fail because we are specifying a file name
abort: cannot partially commit a merge (do not specify files or patterns)
% should fail because we are specifying a pattern
abort: cannot partially commit a merge (do not specify files or patterns)
% should succeed
% test commit message content
HG: Enter commit message. Lines beginning with 'HG:' are removed.
HG: Leave message empty to abort commit.
HG: --
HG: user: test
HG: branch 'default'
HG: added added
HG: changed changed
HG: removed removed
abort: empty commit message