1. 08 Aug, 2013 1 commit
  2. 07 Aug, 2013 1 commit
  3. 06 Aug, 2013 1 commit
  4. 05 Aug, 2013 1 commit
  5. 09 Jul, 2013 1 commit
  6. 18 Jun, 2013 1 commit
  7. 10 Jun, 2013 1 commit
  8. 23 May, 2013 1 commit
  9. 11 May, 2013 1 commit
  10. 02 May, 2013 1 commit
  11. 30 Apr, 2013 1 commit
  12. 31 Mar, 2013 1 commit
  13. 25 Mar, 2013 1 commit
  14. 19 Mar, 2013 1 commit
    • Three submodule status bug fixes · 65025cb8
      1. Fix sort order problem with submodules where "mod" was sorting
         after "mod-plus" because they were being sorted as "mod/" and
         "mod-plus/".  This involved pushing the "contains a .git entry"
         test significantly lower in the stack.
      2. Reinstate behavior that a directory which contains a .git entry
         will be treated as a submodule during iteration even if it is
         not yet added to the .gitmodules.
      3. Now that any directory containing .git is reported as submodule,
         we have to be more careful checking for GIT_EEXISTS when we
         do a submodule lookup, because that is the error code that is
         returned by git_submodule_lookup when you try to look up a
         directory containing .git that has no record in gitmodules or
         the index.
      Russell Belfer committed
  15. 07 Mar, 2013 1 commit
    • Make iterator APIs consistent with standards · 169dc616
      The iterator APIs are not currently consistent with the parameter
      ordering of the rest of the codebase.  This rearranges the order
      of parameters, simplifies the naming of a number of functions, and
      makes somewhat better use of macros internally to clean up the
      iterator code.
      
      This also expands the test coverage of iterator functionality,
      making sure that case sensitive range-limited iteration works
      correctly.
      Russell Belfer committed
  16. 26 Feb, 2013 1 commit
    • Fix initialization of repo directories · 3c42e4ef
      When PR #1359 removed the hooks from the test resources/template
      directory, it made me realize that the tests for
      git_repository_init_ext using templates must be pretty shabby
      because we could not have been testing if the hooks were getting
      created correctly.
      
      So, this started with me recreating a couple of hooks, including
      a sample and symlink, and adding tests that they got created
      correctly in the various circumstances, including with the SHARED
      modes, etc.  Unfortunately this uncovered some issues with how
      directories and symlinks were copied and chmod'ed.  Also, there
      was a FIXME in the code related to the chmod behavior as well.
      
      Going back over the directory creation logic for setting up a
      repository, I found it was a little difficult to read and could
      result in creating and/or chmod'ing directories that the user
      almost certainly didn't intend.
      
      So that let to this work which makes repo initialization much
      more careful (and hopefully easier to follow).  It required a
      couple of extensions / changes to core fileops utilities, but I
      also think those are for the better, at least for git_futils_cp_r
      in terms of being careful about what actions it takes.
      Russell Belfer committed
  17. 25 Feb, 2013 1 commit
  18. 22 Feb, 2013 1 commit
    • Add diff rename tests with partial similarity · d4b747c1
      This adds some new tests that actually exercise the similarity
      metric between files to detect renames, copies, and split modified
      files that are too heavily modified.
      
      There is still more testing to do - these tests are just partially
      covering the cases.
      
      There is also one bug fix in this where a change set with only
      MODIFY being broken into ADD/DELETE (due to low self-similarity)
      without any additional RENAMED entries would end up not processing
      the split requests (because the num_rewrites counter got reset).
      Russell Belfer committed
  19. 11 Feb, 2013 1 commit
  20. 06 Feb, 2013 1 commit
  21. 22 Jan, 2013 1 commit
  22. 18 Jan, 2013 1 commit
  23. 17 Jan, 2013 1 commit
  24. 13 Jan, 2013 1 commit
  25. 12 Jan, 2013 1 commit
  26. 09 Jan, 2013 2 commits
  27. 07 Dec, 2012 1 commit
    • tree: relax the filemode parser · f1c75b94
      There are many different broken filemodes in the wild so we need to
      protect against them and give something useful up the chain. Don't
      fail when reading a tree from the ODB but normalize the mode as best
      we can.
      
      As 664 is no longer a mode that we consider to be valid and gets
      normalized to 644, we can stop accepting it in the treebuilder. The
      library won't expose it to the user, so any invalid modes are a bug.
      Carlos Martín Nieto committed
  28. 29 Nov, 2012 3 commits
  29. 28 Nov, 2012 2 commits
  30. 13 Nov, 2012 1 commit
  31. 09 Nov, 2012 1 commit
  32. 08 Nov, 2012 1 commit
  33. 05 Nov, 2012 1 commit
  34. 02 Nov, 2012 1 commit
    • tags: Fixed the tag parser to correctly treat the message field as optional. · 6bb9fea1
      This fix makes libgit2 capable of parsing annotated tag objects that lack
      the optional message/description field.
      Previously, libgit2 treated this field as mandatory and raised a tag_error on
      such tags. However, the message field is optional.
      
      An example of such a tag is refs/tags/v2.6.16.31-rc1 in Linux:
      
      $ git cat-file tag refs/tags/v2.6.16.31-rc1
      object afaa018cefb6af63befef1df7d8febaae904434f
      type commit
      tag v2.6.16.31-rc1
      tagger Adrian Bunk <bunk@stusta.de> 1162716505 +0100
      $
      Erik van Zijst committed
  35. 30 Oct, 2012 1 commit
  36. 23 Oct, 2012 1 commit
    • Initial implementation of diff rename detection · b4f5bb07
      This implements the basis for diff rename and copy detection,
      although it is based on simple SHA comparison right now instead
      of using a matching algortihm.  Just as `git_diff_merge` can be
      used as a post-pass on diffs to emulate certain command line
      behaviors, there is a new API `git_diff_detect` which will
      update a diff list in-place, adjusting some deltas to RENAMED
      or COPIED state (and also, eventually, splitting MODIFIED deltas
      where the change is too large into DELETED/ADDED pairs).
      
      This also adds a new test repo that will hold rename/copy/split
      scenarios.  Right now, it just has exact-match rename and copy,
      but the tests are written to use tree diffs, so we should be able
      to add new test scenarios easily without breaking tests.
      Russell Belfer committed