• Junio C Hamano's avatar
    Merge branch 'ti/fetch-everything-local-optim' · 5d806b74
    Junio C Hamano authored
    A "git fetch" from a repository with insane number of refs into a
    repository that is already up-to-date still wasted too many cycles
    making many lstat(2) calls to see if these objects at the tips
    exist as loose objects locally.  These lstat(2) calls are optimized
    away by enumerating all loose objects beforehand.
    
    It is unknown if the new strategy negatively affects existing use
    cases, fetching into a repository with many loose objects from a
    repository with small number of refs.
    
    * ti/fetch-everything-local-optim:
      fetch-pack.c: use oidset to check existence of loose object
    5d806b74
fetch-pack.c 32.5 KB