Files
libgit2/tests/resources/peeled.git/packed-refs
Colin Stolley ad7a51d834 refs: Speed up packed lookups.
Currently ref lookups require loading the entire packed-refs file into
a hashmap in memory. For repos with large numbers of refs this can be
painfully slow.

This patch replaces the existing lookup code and instead mmap()'s the
packed-refs file and performs a binary search to locate the ref entry.
Git uses a similiar approach.

The old hash table codepath is still used for unsorted packed-refs files.

This patch also fixes a minor bug where the "peeled" trait is never
parsed correctly from the packed-refs header.
2021-12-14 10:07:03 -06:00

7 lines
323 B
Plaintext
Vendored

# pack-refs with: peeled fully-peeled sorted
c2596aa0151888587ec5c0187f261e63412d9e11 refs/foo/tag-outside-tags
^0df1a5865c8abfc09f1f2182e6a31be550e99f07
0df1a5865c8abfc09f1f2182e6a31be550e99f07 refs/heads/master
c2596aa0151888587ec5c0187f261e63412d9e11 refs/tags/tag-inside-tags
^0df1a5865c8abfc09f1f2182e6a31be550e99f07