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