This patch series aims to make contrib/git-contacts faster by reducing the number of expensive git-blame invocations it makes. It does so by taking advantage of git-blame's new ability to accept multiple -L ranges in a single invocation [1] (es/blame-L-twice in 'next').
Some numbers, given a randomly chosen range of commits:
(before) % time git-contacts 25fba78d36be6297^..23c339c0f262aad2 >/dev/null real 0m6.142s user 0m5.429s sys 0m0.356s
(after) % time git-contacts 25fba78d36be6297^..23c339c0f262aad2 >/dev/null real 0m2.285s user 0m2.093s sys 0m0.165s
[1]: http://thread.gmane.org/gmane.comp.version-control.git/231739
Eric Sunshine (3): contacts: validate hunk length earlier contacts: gather all blame sources prior to invoking git-blame contacts: reduce git-blame invocations
contrib/contacts/git-contacts | 31 ++++++++++++++++++++++--------- 1 file changed, 22 insertions(+), 9 deletions(-)
-- 1.8.4.rc2.460.ga591f4a