##// END OF EJS Templates
mq: Fix --qrefresh --short to work with --exclude and --include...
mq: Fix --qrefresh --short to work with --exclude and --include pmezard expects hg qref -s -X b to apply the -X to the list of files in the patch, and thus remove b from the patch. That's how it worked before f7fc5f5ecd62. That change seemed sensible, but it wasn't... mpm says (17:22:30) pmezard_: kiilerix1: do you mean that -X should be forbidden with -s ? (17:22:54) pmezard_: kiilerix1: and --include too (17:23:03) mpm: No because you should be able to say hg qref -s foo* -X foo-bar so mpm expects hg qref -s -X b * to apply the -X to the list of files in the working directory, and thus don't include b in the patch This patch tries to make both usecases work by creating a matchfn which uses the include/excludes but not the filelist.

File last commit:

r6350:6aa4a3fa default
r7177:09ed32b7 default
Show More
test-merge5
25 lines | 510 B | text/plain | TextLexer
#!/bin/sh
mkdir t
cd t
hg init
echo This is file a1 > a
echo This is file b1 > b
hg add a b
hg commit -m "commit #0" -d "1000000 0"
echo This is file b22 > b
hg commit -m"comment #1" -d "1000000 0"
hg update 0
rm b
hg commit -A -m"comment #2" -d "1000000 0"
mv a c
# in theory, we shouldn't need the "-y" below, but it prevents
# this test from hanging when "hg update" erroneously prompts the
# user for "keep or delete"
echo % should abort
hg update -y 1
mv c a
echo % should succeed
hg update -y 1
exit 0