1. 21 Jan, 2017 4 commits
  2. 20 Jan, 2017 3 commits
    • Skip submodule head/index update when caching. · 673dff88
      `git_submodule_status` is very slow, bottlenecked on
      `git_repository_head_tree`, which it uses through `submodule_update_head`.  If
      the user has requested submodule caching, assume that they want this status
      cached too and skip it.
      
      Signed-off-by: David Turner <dturner@twosigma.com>
      Brock Peabody committed
    • Allow for caching of submodules. · 4d99c4cf
      Added `git_repository_submodule_cache_all` to initialze a cache of
      submodules on the repository so that operations looking up N
      submodules are O(N) and not O(N^2).  Added a
      `git_repository_submodule_cache_clear` function to remove the cache.
      
      Also optimized the function that loads all submodules as it was itself
      O(N^2) w.r.t the number of submodules, having to loop through the
      `.gitmodules` file once per submodule.  I changed it to process the
      `.gitmodules` file once, into a map.
      
      Signed-off-by: David Turner <dturner@twosigma.com>
      Brock Peabody committed
    • Fix formatting · ca05857e
      Signed-off-by: David Turner <dturner@twosigma.com>
      David Turner committed
  3. 16 Jan, 2017 2 commits
  4. 14 Jan, 2017 4 commits
  5. 13 Jan, 2017 1 commit
  6. 11 Jan, 2017 1 commit
  7. 09 Jan, 2017 5 commits
  8. 06 Jan, 2017 8 commits
  9. 04 Jan, 2017 2 commits
  10. 03 Jan, 2017 2 commits
  11. 02 Jan, 2017 1 commit
  12. 01 Jan, 2017 2 commits
  13. 31 Dec, 2016 2 commits
  14. 30 Dec, 2016 3 commits
    • Merge pull request #4052 from dglsswnsn/master · c9b99689
      Fix issue #4046 Seg fault in config_files()
      Edward Thomson committed
    • Merge pull request #4043 from fudanchii/fudanchii/openbsd · 42ad85ef
      Fix BIO_* functions method linking when compiled with libressl (OpenBSD).
      Edward Thomson committed
    • Fix handling of GIT_CHECKOUT_DISABLE_PATHSPEC_MATCH flag. · 5f959dca
      git_checkout_tree() sets up its working directory iterator to respect the
      pathlist if GIT_CHECKOUT_DISABLE_PATHSPEC_MATCH is present, which is great.
      What's not so great is that this iterator is then used side-by-side with
      an iterator created by git_checkout_iterator(), which did not set up its
      pathlist appropriately (although the iterator mirrors all other iterator
      options).
      
      This could cause git_checkout_tree() to delete working tree files which
      were not specified in the pathlist when GIT_CHECKOUT_DISABLE_PATHSPEC_MATCH
      was used, as the unsynchronized iterators causes git_checkout_tree() to think
      that files have been deleted between the two trees.  Oops.
      
      And added a test which fails without this fix (specifically, the final check
      for "testrepo/README" to still be present fails).
      John Fultz committed