Re: GSoC draft proposal: Line-level history browser
- From
Jonathan Nieder <jrnieder@gmail.com>
- Date
- Mar 22, 2010, 08:10 UTC
- Message-ID
- <20100322081003.GA26535@progeny.tock>
- In-Reply-To
- <7v7hp4n6qn.fsf@alter.siamese.dyndns.org>
Junio C Hamano wrote:
> I am actually questioning the existence of "recursively and deeply to find > more"; the reason blame stopped at a particular commit is exactly because > there is no more
Hmm, I can imagine some (mutually inconsistent) heuristics:
- Suppose in the blamed commit a single isolated line changed. Then it is clear where to look next.
- If the mystery code is at the beginning of the file (resp. beginning of a diff -C0 hunk), maybe it was based on the line at the same position within the previous commit.
- Take the line with the lowest Levenshtein distance from the mystery code.
- Expect certain common patterns of change: substituted words, whitespace changes, added arguments for a function, things like that.
That said, I still don’t have a clear picture of a basic strategy.
Interested, Jonathan