dirstate: prevent useless util.fspath() invocation for '.'
at first of dirstate.walk() on case insensitive filesystem,
normalization of '.' causes util.fspath() invocation, but '.' is not
cached in it.
this invocation is not only useless, but also harmful: initial "hg
tag" causes creation of ".hgtags" file after dirstate.walk(), and
looking up ".hgtags" in cache will fail, because directory contents of
root is already cached at util.fspath() invocation for '.'.
$ hg init a
$ echo a > a/a
$ hg --cwd a ci -Ama
adding a
$ hg clone a c
updating to branch default
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg clone a b
updating to branch default
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ echo b >> b/a
$ hg --cwd b ci -mb
Push should push to 'default' when 'default-push' not set:
$ hg --cwd b push
pushing to $TESTTMP/a
searching for changes
adding changesets
adding manifests
adding file changes
added 1 changesets with 1 changes to 1 files
Push should push to 'default-push' when set:
$ echo 'default-push = ../c' >> b/.hg/hgrc
$ hg --cwd b push
pushing to $TESTTMP/c
searching for changes
adding changesets
adding manifests
adding file changes
added 1 changesets with 1 changes to 1 files