I'm trying to track down how I can see the history of a file that shows mode changes. Someone keeps ripping off the exectuable bit of one of my scripts when they commit/push. But i can't find a history of the file changes that reveal whose commit is changing this.
It's unfortunately a little bit messy to try to track down that information, for two reasons:
First, there is no easy way in Mercurial to ask for a list of when a file's mode has changed. Even with the new revspecs in Mercurial 1.6, I don't know of a way to say, "Show me when this file's mode was changed, regardless of what else might have happened."
Second, to increase compatibility with diff tools, Mercurial's
The good news is that you can work around these issues easily. Since it's happening to one of your files repeatedly, you won't have to look at much history to find a bad revision. And Mercurial can output mode change information by asking it to output Git-style diffs, which will let you easily see what's wrong.
If you're on the command line: get a list of when the file was changed with
When you find it, you've got your culprit.
If you're using TortoiseHg: Enable Git-style diffs by going to