On Wed, 3 Sep 2008 17:44:19 -0500, Will Fiveash <William.Fiveash at Sun.COM> wrote: > In /ws/onnv-gate I see that .hgignore contains: > > syntax: glob > * > > Why? I ask this because this breaks one of hg status useful features > which is reporting unknown files.
It also transforms `unknown' files to `ignored' by default, so you can still get at them with: hg stat --ignored or hg stat -i So "hg status" isn't really broken. It's just a lot less chatty :) Ignoring all files by default is probably going to be slightly inconvenient if you forget to add new files to a workspace, build with them, commit and push to another workspace. Then the build may be using 'local' files that will not get pushed, and cause build problems later. Having said that, the default `.hgignore' has a few nice side-effects too: (a) You don't get to see all the build output files by default. This is slightly nicer than getting a few thousands of *.o files and other intermediate build output thrown into the default output of every single "hg stat". (b) Mercurial doesn't stat the ignored files, and this speeds up some common operations (hg stat, hg diff, and pretty much anything that depends on the 'dirstate' of the workspace). Some of the performance fixes for ignored files were pushed to the latest development branch of Mercurial (the `crew' repository), so they are probably unavailable in the ON build tools. They will start being more useful when ON updates its build tools to an official release of Mercurial that includes all these performance fixes. HTH, Giorgos