]> git.ipfire.org Git - thirdparty/git.git/commit - blame.h
blame: optionally track line fingerprints during fill_blame_origin()
authorBarret Rhoden <brho@google.com>
Wed, 15 May 2019 21:45:01 +0000 (17:45 -0400)
committerJunio C Hamano <gitster@pobox.com>
Thu, 16 May 2019 02:36:23 +0000 (11:36 +0900)
commit1fc73384bac289b4907f0adba2a25d0644affa73
tree97015428911c3a14b5b7bf27d241453787e0195c
parent8934ac8c92a1dc805f7bbd86cbc251ade66e1161
blame: optionally track line fingerprints during fill_blame_origin()

fill_blame_origin() is a convenient place to store data that we will use
throughout the lifetime of a blame_origin.  Some heuristics for
ignoring commits during a blame session can make use of this storage.
In particular, we will calculate a fingerprint for each line of a file
for blame_origins involved in an ignored commit.

In this commit, we only calculate the line_starts, reusing the existing
code from the scoreboard's line_starts.  In an upcoming commit, we will
actually compute the fingerprints.

This feature will be used when we attempt to pass blame entries to
parents when we "ignore" a commit.  Most uses of fill_blame_origin()
will not require this feature, hence the flag parameter.  Multiple calls
to fill_blame_origin() are idempotent, and any of them can request the
creation of the fingerprints structure.

Suggested-by: Michael Platings <michael@platin.gs>
Signed-off-by: Barret Rhoden <brho@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
blame.c
blame.h