[PATCH] revset: support "follow(renamed.py, e22f4f3f06c3)" (issue5334)

Gábor STEFANIK Gabor.STEFANIK at nng.com
Fri Aug 19 10:52:45 EDT 2016


>


--------------------------------------------------------------------------
This message, including its attachments, is confidential. For more information please read NNG's email policy here:
http://www.nng.com/emailpolicy/
By responding to this email you accept the email policy.


-----Original Message-----
> From: Yuya Nishihara [mailto:youjah at gmail.com] On Behalf Of Yuya
> Nishihara
> Sent: Friday, August 19, 2016 4:17 PM
> To: Gábor STEFANIK <Gabor.STEFANIK at nng.com>
> Cc: mercurial-devel at mercurial-scm.org
> Subject: Re: [PATCH] revset: support "follow(renamed.py, e22f4f3f06c3)"
> (issue5334)
>
> On Fri, 19 Aug 2016 13:56:58 +0000, Gábor STEFANIK wrote:
> > > And we'll need to check if startrev is empty or not. last() returns
> > > None if the set is empty. Or we might want to specify a set of start
> revisions?
> >
> > Will add an "if rev is not None:" check here.
> >
> > A set of multiple start revisions doesn't really make sense IMO. The only
> reason why this parameter is a revset rather than just a string is to avoid
> exposing the index domain of repo[...] (an implementation detail) in the UI.
>
> For example, you might want to see the full log of files including renames,
> which would be "follow(path, filelog(path))" (assuming uninteresting start
> revisions would be omitted.)

This would make sense if follow() could walk both forward and backwards in the DAG; it currently only walks backwards.
Then, "follow(path, badc0ffee007)" would indeed show the whole history of path in the given revision, and
"follow(path, filelog(path))" would then make sense as "show me all revisions that touch a file that was ever located at path".


More information about the Mercurial-devel mailing list