view tests/test-mq-eol.out @ 9725:3f522d2fa633

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.
author Yannick Gingras <ygingras@ygingras.net>
date Thu, 05 Nov 2009 15:18:56 +0100
parents 561ff8d9e4f0
children 9c2c94934f0d
line wrap: on
line source

adding .hgignore
adding a
adding eol.diff to series file
% should fail in strict mode
applying eol.diff
patching file a
Hunk #1 FAILED at 0
1 out of 1 hunks FAILED -- saving rejects to file a.rej
patch failed, unable to continue (try -v)
patch failed, rejects left in working dir
errors during apply, please fix and refresh eol.diff
popping eol.diff
patch queue now empty
% invalid eol
applying eol.diff
patch failed, unable to continue (try -v)
patch failed, rejects left in working dir
errors during apply, please fix and refresh eol.diff
popping eol.diff
patch queue now empty
% force LF
applying eol.diff
now at: eol.diff
test message<LF>
<LF>
diff --git a/a b/a<LF>
--- a/a<LF>
+++ b/a<LF>
@@ -1,5 +1,5 @@<LF>
-a<LF>
-b<LF>
-c<LF>
-d<LF>
-e<LF>
\ No newline at end of file<LF>
+a<CR><LF>
+y<CR><LF>
+c<CR><LF>
+d<CR><LF>
+z<LF>
\ No newline at end of file<LF>
a<CR><LF>
y<CR><LF>
c<CR><LF>
d<CR><LF>
z
popping eol.diff
patch queue now empty
% push again forcing LF and compare revisions
applying eol.diff
now at: eol.diff
a<CR><LF>
y<CR><LF>
c<CR><LF>
d<CR><LF>
z
popping eol.diff
patch queue now empty
% push again without LF and compare revisions
applying eol.diff
now at: eol.diff
a<CR><LF>
y<CR><LF>
c<CR><LF>
d<CR><LF>
z
popping eol.diff
patch queue now empty