Mercurial > hg
view tests/test-pull-r @ 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 | 6c82beaaa11a |
children | d42821cd5c96 |
line wrap: on
line source
#!/bin/sh hg init repo cd repo echo foo > foo hg ci -qAm 'add foo' echo >> foo hg ci -m 'change foo' hg up -qC 0 echo bar > bar hg ci -qAm 'add bar' hg log cd .. hg init copy cd copy echo '% pull a missing revision' hg pull -qr missing ../repo echo '% pull -r 0' hg pull -qr 0 ../repo hg log echo '% pull -r 1' hg pull -qr 1 ../repo hg log # this used to abort: received changelog group is empty echo '% pull -r 1 again' hg pull -qr 1 ../repo