#!/bin/sh hg init repo1 cd repo1 mkdir a b a/1 b/1 b/2 touch in_root a/in_a b/in_b a/1/in_a_1 b/1/in_b_1 b/2/in_b_2 echo "hg status in repo root:" hg status echo "hg status . in repo root:" hg status . for dir in a b a/1 b/1 b/2; do echo "hg status in $dir:" hg status --cwd "$dir" echo "hg status . in $dir:" hg status --cwd "$dir" . echo "hg status .. in $dir:" hg status --cwd "$dir" .. done cd .. hg init repo2 cd repo2 touch modified removed deleted ignored echo "^ignored$" > .hgignore hg ci -A -m 'initial checkin' -d "1000000 0" sleep 1 # make sure mtime is changed touch modified added unknown ignored hg add added hg remove removed rm deleted echo "hg status:" hg status echo "hg status modified added removed deleted unknown never-existed ignored:" hg status modified added removed deleted unknown never-existed ignored hg copy modified copied echo "hg status -C:" hg status -C echo "hg status -A:" hg status -A echo "^ignoreddir$" > .hgignore mkdir ignoreddir touch ignoreddir/file echo "hg status ignoreddir/file:" hg status ignoreddir/file echo "hg status -i ignoreddir/file:" hg status -i ignoreddir/file