[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: linevector for backwards blame

From: Daniel Berlin <dberlin_at_dberlin.org>
Date: 2005-02-16 15:27:30 CET

On Wed, 2005-02-16 at 08:37 +0100, Peter N. Lundblad wrote:
> On Tue, 15 Feb 2005, Daniel Berlin wrote:
>
> > On Tue, 2005-02-15 at 20:05 -0500, Mark Benedetto King wrote:
> >
> > > This should not be difficult: the existing system just tracks everything
> > > by line number until it is time to output the blame, then it simply reads
> > > through the blamed revision (which exists in a temporary file) one line
> > > at a time, calling the blame callback as it goes.
> >
> >
> > I've started to implement it.
> > The real problem is that i have to read each file into an artificial
> > buffer seperated by lines since diff gives me line numbers, but no text
> > for the lines.
> >
> Mark's point was that you don't actually need the text of all the lines.
This is true, you could add fake lines :).
However, We don't fix it up on the fly, we actually add and delete the
lines diff by diff as we are processing blame to keep everything
straight. For purposes of comparing to the youngest revision, only
deletes matter (we diff youngest to next youngest, then next youngest to
next younger than that, etc. *not* the other way around). So
theoretically, you could just add fake lines with no real data, since
even modifies are processed as "add/delete"

> All lines you are eventually going to output are in the youngest file, so
> just keep that file around ntil the bitter end.

>
> Noe that get_filerevs currently doesn't give revisions backwards.
It does in my version :)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Wed Feb 16 15:28:52 2005

This is an archived mail posted to the Subversion Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.