templatefilters: add new stripdir filter
Adds a new template filter for removing directory levels from a
string. Examples:
{foo|stripdir} -> 'foo'
{foo/bar|stripdir} -> 'foo'
{foo/bar/more|stripdir} -> 'foo/bar'
{foo/bar/more|stripdir|stripdir} -> 'foo'
#!/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