Skip to content
Snippets Groups Projects
  1. Oct 22, 2021
  2. Jul 06, 2021
  3. Feb 05, 2021
    • Dan Villiom Podlaski Christiansen's avatar
      pull: do not invent or imply a "default" when none exists · 1c9ac8cf90f4
      Dan Villiom Podlaski Christiansen authored
      As far as I can tell, this was previously used to "detect" an initial
      clone. Unfortunately, that logic is incorrect: like Mercurial, hg-git
      should consider pulling into an empty repository distinct from
      cloning.
      
      As an apparent aside, it also kind-of-sort-of handled the case where
      you pulled from a local Git repository into a location that happened
      to be default.
      
      To fix this, we do two things:
      
      1) Expand relative local paths before comparing them to other paths.
      2) Detect clone from the source of the default `default` path.
      
      The end result is:
      
      1) You can pull from e.g. `../repo` to update remotes, with an
         equivalent path specified in the configuration
      2) Pulls from entirely foreign remotes are no longer saved.
      3) We always activate the desired bookmarks on clone.
      
      Although the two changes might seem unrelated, their effect is
      combined, and either alone would break the tests.
      1c9ac8cf90f4
  4. Jul 06, 2021
  5. May 31, 2021
  6. Jul 06, 2021
  7. Feb 05, 2021
  8. Jun 24, 2021
  9. Jul 31, 2021
  10. Aug 01, 2021
  11. Jul 06, 2021
  12. Feb 05, 2021
  13. Jul 06, 2021
  14. Jun 24, 2021
  15. Jun 18, 2021
    • Dan Villiom Podlaski Christiansen's avatar
      incoming: stop caching dulwich objects · a28216b2ea69
      Dan Villiom Podlaski Christiansen authored
      This is a premature optimisation, since Dulwich does a lot caching
      internally anyway. I have been unable to demonstrate any benefit from
      this; a bit of profiling shows that this stage of an incoming
      command takes ~12 seconds, even with more than 100k commits.
      
      Generally speaking, the actual conversion will take significantly
      longer time than caching these objects. In fact, the cache might
      actually be harmful for very long-running conversions, as they tend to
      run into memory constraints.
      a28216b2ea69
  16. Jul 07, 2021
    • Dan Villiom Podlaski Christiansen's avatar
      clone: move in pack when possible · 4dc1e9ba165b
      Dan Villiom Podlaski Christiansen authored
      Dulwich has the add_thin_pack() function for adding a pack to the
      repository which may be thin, i.e. refer to objects outside the pack.
      We can avoid that on an initial clone, however, as we know that we
      just created the Git repository, meaning that the pack is never thin.
      
      The overhead is negligible on smaller repositories, but can be
      comparable to network transfer on a fast connection. The only downside
      is that it just might break something if the user specifies a
      preexisting Git repository in the configuration, but that seems a bit
      esoteric.
      4dc1e9ba165b
    • Dan Villiom Podlaski Christiansen's avatar
      9a6491edea3e
  17. Jun 21, 2021
    • Dan Villiom Podlaski Christiansen's avatar
      import: use spooled temporary file · 4aa0e09581a9
      Dan Villiom Podlaski Christiansen authored
      Previously, we'd just load fetched data into memory, but that seems a
      bit wasteful. After all, some repositories can be quite large. Use a
      spooled temporary file instead when fetching repositories, and allow
      the customising the buffer size.
      4aa0e09581a9
  18. Jul 09, 2021
  19. Jul 07, 2021
  20. Oct 23, 2021
  21. Sep 08, 2021
  22. Aug 27, 2021
  23. Jul 31, 2021
  24. Jul 07, 2021
  25. Jul 27, 2021
Loading