1. 7
  1. 1

    …but doesn’t it still have all the commits? So we have a sparse checkout, and a sparse index, backed by a complete set of commits, including all the actual data?

    1. 3

      One of the objectives of sparse checkout + sparse index is to improve developer productivity, such as by speeding up day-to-day operations like git status. The complete set of commits isn’t necessarily the bottleneck here as much as the structure of the index.

      It’s also possible to use shallow or partial clones to reduce the size of the objects on disk: https://github.blog/2020-12-21-get-up-to-speed-with-partial-clone-and-shallow-clone/

      1. 1

        Yes, I believe this is currently the case.

        IIRC Microsoft was working on lazy-loading objects from the server which would complete the story but I don’t know how well that is working.