• uis
      link
      fedilink
      arrow-up
      2
      ·
      5 months ago

      If all data is stored as patches, then no shallow cloning

      • toastal@lemmy.ml
        link
        fedilink
        arrow-up
        2
        ·
        edit-2
        5 months ago

        When a repository is cloned lazily, darcs adds an entry in _darcs/prefs/sources, so whenever you use a commands which needs to work with all the patches, darcs try to fetch the missing patches using the entries from the cache, since the original repository was added to sources, it is also added to the cache (since darcs relies on the source file to load the cache).

        https://darcs.net/Internals/CacheSystem#lazy-repositories-and-the-cache-system

        You have all the code & fetch patches as needed. Not the same as a shallow clone, but if trying to not download the whole project history, this serves a smiliar goal.