#!/bin/sh hg init echo foo > foo hg add foo hg commit -m1 -d"0 0" echo "# should show copy" hg copy foo bar hg debugstate|grep '^copy' echo "# shouldn't show copy" hg commit -m2 -d"0 0" hg debugstate|grep '^copy' echo "# should match" hg debugindex .hg/store/data/foo.i hg debugrename bar echo bleah > foo echo quux > bar hg commit -m3 -d"0 0" echo "# should not be renamed" hg debugrename bar hg copy -f foo bar echo "# should show copy" hg debugstate|grep '^copy' hg commit -m3 -d"0 0" echo "# should show no parents for tip" hg debugindex .hg/store/data/bar.i echo "# should match" hg debugindex .hg/store/data/foo.i hg debugrename bar echo "# should show no copies" hg debugstate|grep '^copy' echo "# copy --after on an added file" cp bar baz hg add baz hg cp -A bar baz hg st -C echo "# foo was clean:" hg st -AC foo echo "# but it's considered modified after a copy --after --force" hg copy -Af bar foo hg st -AC foo exit 0