1. 05 Feb, 2013 1 commit
  2. 26 Jan, 2013 1 commit
  3. 25 Jan, 2013 1 commit
  4. 18 Jan, 2013 1 commit
  5. 17 Jan, 2013 1 commit
  6. 13 Jan, 2013 2 commits
  7. 12 Jan, 2013 2 commits
  8. 11 Jan, 2013 2 commits
  9. 10 Jan, 2013 1 commit
  10. 09 Jan, 2013 1 commit
  11. 06 Jan, 2013 1 commit
  12. 05 Jan, 2013 2 commits
  13. 04 Jan, 2013 9 commits
  14. 01 Dec, 2012 1 commit
  15. 30 Nov, 2012 1 commit
  16. 27 Nov, 2012 1 commit
  17. 23 Nov, 2012 1 commit
    • Reset all static variables to NULL in clar's __cleanup · 9094d30b
      Without this change, any failed assertion in the second (or a later) test
      inside a test suite has a chance of double deleting memory, resulting in
      a heap corruption. See #1096 for details.
      
      This leaves alone the test cases where we "just" use cl_git_sandbox_init()
      and cl_git_sandbox_cleanup(). These methods already take good care to not
      double delete a repository.
      
      Fixes #1096
      Sascha Cunz committed
  18. 15 Nov, 2012 1 commit
    • Add explicit git_index ptr to diff and checkout · bbe6dbec
      A number of diff APIs and the `git_checkout_index` API take a
      `git_repository` object an operate on the index.  This updates
      them to take a `git_index` pointer explicitly and only fall back
      on the `git_repository` index if the index input is NULL.  This
      makes it easier to operate on a temporary index.
      Russell Belfer committed
  19. 09 Nov, 2012 2 commits
    • Rework checkout with new strategy options · ad9a921b
      This is a major reworking of checkout strategy options.  The
      checkout code is now sensitive to the contents of the HEAD tree
      and the new options allow you to update the working tree so that
      it will match the index content only when it previously matched
      the contents of the HEAD.  This allows you to, for example, to
      distinguish between removing files that are in the HEAD but not
      in the index, vs just removing all untracked files.
      
      Because of various corner cases that arise, etc., this required
      some additional capabilities in rmdir and other utility functions.
      
      This includes the beginnings of an implementation of code to read
      a partial tree into the index based on a pathspec, but that is
      not enabled because of the possibility of creating conflicting
      index entries.
      Russell Belfer committed
    • Fix checkout behavior when its hands are tied · 32def5af
      So, @nulltoken created a failing test case for checkout that
      proved to be particularly daunting.  If checkout is given only
      a very limited strategy mask (e.g. just GIT_CHECKOUT_CREATE_MISSING)
      then it is possible for typechange/rename modifications to leave it
      unable to complete the request.  That's okay, but the existing code
      did not have enough information not to generate an error (at least
      for tree/blob conflicts).
      
      This led me to a significant reorganization of the code to handle
      the failing case, but it has three benefits:
      
      1. The test case is handled correctly (I think)
      2. The new code should actually be much faster than the old code
         since I decided to make checkout aware of diff list internals.
      3. The progress value accuracy is hugely increased since I added
         a fourth pass which calculates exactly what work needs to be
         done before doing anything.
      Russell Belfer committed
  20. 25 Oct, 2012 1 commit
  21. 20 Oct, 2012 7 commits