transitive copy/rename
Add support for transitive copy or rename operations, e.g.
hg rename a b
... (possibly edit b)
hg rename b c
hg commit ...
by actually renaming "b" as "c" while recording a copy of
"a" to "c" and a removal of "a".
#!/bin/sh
hg init
echo a > a
hg add a
hg commit -m "test" -d "0 0"
hg history
hg tag -d "0 0" "bleah"
hg history
echo foo >> .hgtags
hg tag -d "0 0" "bleah2" || echo "failed"
hg tag -d "0 0" -r 0 "bleah2" 1 || echo "failed"
hg revert .hgtags
hg tag -d "0 0" -r 0 "bleah0"
hg tag -l -d "0 0" "bleah1" 1
cat .hgtags
cat .hg/localtags
hg tag -l 'xx
newline'
hg tag -l 'xx:xx'
true