This patch introduces a tentative step towards integrating rev-cache into the internal revision walker. Cache traversal is added to both limited and unlimited revision walks, and FACE_VALUEd objects are handled in list-objects. Furthermore the unique object_list field is added to commit objects, to allow runtime association with a commit's cached 'unique' object list. The traversal mechanism in rev-cache is updated to reflect the limiting methods used in rev-list. Tests for coagulation and index generation are included, in addition to several verifying the correctness of integration. Signed-off-by: Nick Edelen <sirnot@xxxxxxxxx> --- builtin-rev-cache.c | 44 +++++++- commit.c | 2 +- commit.h | 1 + list-objects.c | 19 +++- rev-cache.c | 299 +++++++++++++++++++++++++++++++++++++++------ revision.c | 91 +++++++++++--- t/t6015-rev-cache-list.sh | 120 +++++++++++++++++-- 7 files changed, 505 insertions(+), 71 deletions(-)
Attachment:
patch_int.diff
Description: Binary data