|
From: Eric S. R. <es...@th...> - 2017-10-16 09:36:19
|
Daniel J Sebald <dan...@ie...>:
> This may be where Eric's approach has an advantage, that rather than the
> diff hunk it sounds like he's pulling out the actual snapshot of the
> ChangeLog at the time the changeset was made. That might sweep some more
> changesets under the same author.
That is correct. My code walks the commit list looking at the actual
blobs associated with each changeset. And those are whole-file
copies, not diffs.
This should not fail except in a couple of unlikely cases
(1) A malformed ChangeLog entry header (I've found two of those).
(2) Somebody tweaks the middle of a ChangeLog file (e.g. to fix a typo) without
adding a new top entry and it is *not* a changeset modifying only
ChangeLogs.
(3) Too-small fuzz (time window for CVS commits to be considered close
enough to coalesce into a changeset) results in a changest being
broken into pieces. It's hard to know how often this happens, but
I think it's pretty rare.
One of my metrics for a conversion that was worth doing is when I find a good
reason to write and field-test a new surgical primitive. GNUPLOT has, a bit
to my surprise, been interesting twice: one new primitive is the Changelog
miner, the other is a command to incorporate tarballs as new commits.
--
<a href="http://www.catb.org/~esr/">Eric S. Raymond</a>
My work is funded by the Internet Civil Engineering Institute: https://icei.org
Please visit their site and donate: the civilization you save might be your own.
|