tests/test-parents
author Benoit Boissinot <benoit.boissinot@ens-lyon.org>
Thu, 15 Apr 2010 18:08:48 +0200
branchstable
changeset 10921 fb89cd21a7a0
parent 5299 5a4824f6665c
permissions -rwxr-xr-x
workingctx: correctly compute the flag for noexec filesystems+merge This bug happens if the filesystem doesn't support exec-bit, during merges, for example in 24ed7a541f23 on the hg repo. If f is not in p1, but is in p2 and has the x-bit in p2, since the dirstate is based on p1, and the FS doesn't support the exec-bit, the dirstate can't "guess" the right bit. We instead fix it in workingcontext.flags()/manifest.

#!/bin/sh
# test parents command

hg init repo
cd repo
echo % no working directory
hg parents

echo a > a
echo b > b
hg ci -Amab -d '0 0'
echo a >> a
hg ci -Ama -d '1 0'
echo b >> b
hg ci -Amb -d '2 0'
echo c > c
hg ci -Amc -d '3 0'
hg up -C 1
echo d > c
hg ci -Amc2 -d '4 0'
hg up -C 3

echo % hg parents
hg parents

echo % hg parents a
hg parents a

echo % hg parents c, single revision
hg parents c

echo % hg parents -r 3 c
hg parents -r 3 c

echo % hg parents -r 2
hg parents -r 2

echo % hg parents -r 2 a
hg parents -r 2 a

echo % hg parents -r 2 ../a
hg parents -r 2 ../a

echo '% cd dir; hg parents -r 2 ../a'
mkdir dir
cd dir
hg parents -r 2 ../a

echo '% hg parents -r 2 path:a'
hg parents -r 2 path:a

echo '% hg parents -r 2 glob:a'
cd ..
hg parents -r 2 glob:a

echo % merge working dir with 2 parents, hg parents c
HGMERGE=true hg merge
hg parents c

echo % merge working dir with 1 parent, hg parents
hg up -C 2
HGMERGE=true hg merge -r 4
hg parents
echo % merge working dir with 1 parent, hg parents c
hg parents c

true