Spurious 'M' status (was: Re: Mozilla: hg as a collaboration tool)
Matt Mackall
mpm at selenic.com
Thu Feb 7 11:20:37 CST 2008
On Thu, 2008-02-07 at 11:59 -0500, Jesse Glick wrote:
> Dirkjan Ochtman wrote:
> > hg status [can on occasion show] files that don't show up in hg diff
> > (because just their x bit changed, for example). In these cases, it
> > either helps to understand the underlying model or there are simple
> > fixes ([diff] git = true or some such)
>
> Somewhat off-topic, I have run into the situation - which of course I
> have no idea how to reproduce - that 'hg stat' shows some files as
> modified that I certainly did not intentionally edit, yet even 'hg di
> -g' shows nothing. 'hg up -C' corrects the problem but 'hg revert
> <file>' does not. Out of tens of thousands of files in the repo, just a
> dozen or so are affected, and look to be selected quite at random. I
> think I have only seen this on Windows.
>
> I don't know if it is a Mercurial bug, but when it happened I had no
> obvious way to ask Mercurial: "what exactly makes you think this file is
> modified?" Is there a simple way to get a useful diagnosis when this
> happens?
Look at the output of:
hg debugstate | grep file
hg manifest --debug | grep file
ls -l file
eg:
n 755 537 2008-01-21 14:31:14 hg
e48ab706a921c677f12a4d0acab26bcaa501f4ce 755 * hg
-rwxr-xr-x 1 1000 1000 537 Jan 21 14:31 hg*
Permissions agree on all three, size and date agree on the first and
third.
We've gotten a report where somehow the dirstate thought the exec bit
was not what it should be, but we don't know how to reproduce it.
--
Mathematics is the supreme nostalgia of our time.
More information about the Mercurial
mailing list