##// 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:

r5091:fc610626 default
r7177:09ed32b7 default
Show More
test-no-symlinks
47 lines | 803 B | text/plain | TextLexer
#!/bin/sh
"$TESTDIR/hghave" no-symlink || exit 80
# The following script was used to create the bundle:
#
# hg init symlinks
# cd symlinks
# echo a > a
# mkdir d
# echo b > d/b
# ln -s a a.lnk
# ln -s d/b d/b.lnk
# hg ci -Am t
# hg bundle --base null ../test-no-symlinks.hg
# Extract a symlink on a platform not supporting them
echo % unbundle
hg init t
cd t
hg pull -q "$TESTDIR/test-no-symlinks.hg"
hg update
cat a.lnk && echo
cat d/b.lnk && echo
# Copy a symlink and move another
echo % move and copy
hg copy a.lnk d/a2.lnk
hg mv d/b.lnk b2.lnk
hg ci -Am copy
cat d/a2.lnk && echo
cat b2.lnk && echo
# Bundle and extract again
echo % bundle
hg bundle --base null ../symlinks.hg
cd ..
hg init t2
cd t2
hg pull ../symlinks.hg
hg update
cat a.lnk && echo
cat d/a2.lnk && echo
cat b2.lnk && echo