|
|
#!/bin/sh
|
|
|
|
|
|
remove() {
|
|
|
hg rm $@
|
|
|
hg st
|
|
|
# do not use ls -R, which recurses in .hg subdirs on Mac OS X 10.5
|
|
|
find . -name .hg -prune -o -type f -print | sort
|
|
|
hg up -C
|
|
|
}
|
|
|
|
|
|
hg init a
|
|
|
cd a
|
|
|
echo a > foo
|
|
|
|
|
|
echo % file not managed
|
|
|
remove foo
|
|
|
|
|
|
hg add foo
|
|
|
hg commit -m1
|
|
|
|
|
|
# the table cases
|
|
|
|
|
|
echo % 00 state added, options none
|
|
|
echo b > bar
|
|
|
hg add bar
|
|
|
remove bar
|
|
|
|
|
|
echo % 01 state clean, options none
|
|
|
remove foo
|
|
|
|
|
|
echo % 02 state modified, options none
|
|
|
echo b >> foo
|
|
|
remove foo
|
|
|
|
|
|
echo % 03 state missing, options none
|
|
|
rm foo
|
|
|
remove foo
|
|
|
|
|
|
echo % 10 state added, options -f
|
|
|
echo b > bar
|
|
|
hg add bar
|
|
|
remove -f bar
|
|
|
rm bar
|
|
|
|
|
|
echo % 11 state clean, options -f
|
|
|
remove -f foo
|
|
|
|
|
|
echo % 12 state modified, options -f
|
|
|
echo b >> foo
|
|
|
remove -f foo
|
|
|
|
|
|
echo % 13 state missing, options -f
|
|
|
rm foo
|
|
|
remove -f foo
|
|
|
|
|
|
echo % 20 state added, options -A
|
|
|
echo b > bar
|
|
|
hg add bar
|
|
|
remove -A bar
|
|
|
|
|
|
echo % 21 state clean, options -A
|
|
|
remove -A foo
|
|
|
|
|
|
echo % 22 state modified, options -A
|
|
|
echo b >> foo
|
|
|
remove -A foo
|
|
|
|
|
|
echo % 23 state missing, options -A
|
|
|
rm foo
|
|
|
remove -A foo
|
|
|
|
|
|
echo % 30 state added, options -Af
|
|
|
echo b > bar
|
|
|
hg add bar
|
|
|
remove -Af bar
|
|
|
rm bar
|
|
|
|
|
|
echo % 31 state clean, options -Af
|
|
|
remove -Af foo
|
|
|
|
|
|
echo % 32 state modified, options -Af
|
|
|
echo b >> foo
|
|
|
remove -Af foo
|
|
|
|
|
|
echo % 33 state missing, options -Af
|
|
|
rm foo
|
|
|
remove -Af foo
|
|
|
|
|
|
# test some directory stuff
|
|
|
|
|
|
mkdir test
|
|
|
echo a > test/foo
|
|
|
echo b > test/bar
|
|
|
hg ci -Am2
|
|
|
|
|
|
echo % dir, options none
|
|
|
rm test/bar
|
|
|
remove test
|
|
|
|
|
|
echo % dir, options -f
|
|
|
rm test/bar
|
|
|
remove -f test
|
|
|
|
|
|
echo % dir, options -A
|
|
|
rm test/bar
|
|
|
remove -A test
|
|
|
|
|
|
echo % dir, options -Af
|
|
|
rm test/bar
|
|
|
remove -Af test
|
|
|
|
|
|
echo 'test remove dropping empty trees (issue1861)'
|
|
|
mkdir -p issue1861/b/c
|
|
|
echo x > issue1861/x
|
|
|
echo y > issue1861/b/c/y
|
|
|
hg ci -Am add
|
|
|
hg rm issue1861/b
|
|
|
hg ci -m remove
|
|
|
ls issue1861
|
|
|
|