un-reachable revisions from filelog

Benoit Boissinot bboissin at gmail.com
Wed Apr 28 04:30:41 CDT 2010


On Wed, Apr 28, 2010 at 10:50 AM, FUJIWARA Katsunori
<fujiwara at ascade.co.jp> wrote:
> Hi, Matt.
>
> At Wed, 28 Apr 2010 02:01:01 -0500,
> Matt Mackall wrote:
>
>> > In one of my hg repos, there are some un-reachable revisions when I
>> > specify exact filename to "hg log".
>> >
>> > But such revisions are visible from "hg log" if target file is not
>> > specified, and:
>> >
>> >     - "hg log -v" says that they modify target file
>> >     - "hg diff" generates expected output for target file
>> >
>> > so, recorded history seems to be not so(but a little) damaged.
>> >
>> > I found that file contexts for target file of un-reachable revisions
>> > point to same filerev. So, scan based on filelog(= "hg log" with
>> > filename speicification) can not show such revisions.
>>
>> Yup. There is no damage, just Mercurial being weird about walking
>> filelogs.
>
> OK.
>
> Then, I want to know:
>
> (Q1) at least in my repo, same changes in different changesets seem to
>     be unified in filelog. is this expected behavior ?

Yes.
>
> (Q2) and if so, "hg log" can not show exact all changesets related to
>     specified file, can not it ?
>
It can, but doesn't, because it's hard to do (there are other things
it doesn't show: deletions for instance). In the meantime you can use
hg log -k filename.

Cheers,

Benoit


More information about the Mercurial-devel mailing list