Skip to content

commit: Refactor recursive `GetTreeEntries()` for efficiency

Patrick Steinhardt requested to merge pks-commit-tree-entries into master

This MR refactors the recursive case of GetTreeEntries() to be more efficient. Previously, we manually walked down the tree hierarchy and asked a long-lived git-cat-file(1) process for the respective tree objects. This is quite inefficient though, and we can ultimately just ask git-ls-tree(1) to do this for us. This brings a 70% speedup and requires 30% less memory to do the same thing.

Closes #3888 (closed)

Merge request reports