1. 28 May, 2014 2 commits
  2. 23 May, 2014 1 commit
  3. 21 May, 2014 2 commits
  4. 18 May, 2014 1 commit
  5. 12 May, 2014 1 commit
  6. 08 May, 2014 1 commit
  7. 07 May, 2014 1 commit
  8. 06 May, 2014 1 commit
    • Add filter options and ALLOW_UNSAFE · 5269008c
      Diff and status do not want core.safecrlf to actually raise an
      error regardless of the setting, so this extends the filter API
      with an additional options flags parameter and adds a flag so that
      filters can be applied with GIT_FILTER_OPT_ALLOW_UNSAFE, indicating
      that unsafe filter application should be downgraded from a failure
      to a warning.
      Russell Belfer committed
  9. 02 May, 2014 9 commits
  10. 30 Apr, 2014 2 commits
  11. 29 Apr, 2014 1 commit
    • commit: safer commit creation with reference update · 217c029b
      The current version of the commit creation and amend function are unsafe
      to use when passing the update_ref parameter, as they do not check that
      the reference at the moment of update points to what the user expects.
      
      Make sure that we're moving history forward when we ask the library to
      update the reference for us by checking that the first parent of the new
      commit is the current value of the reference. We also make sure that the
      ref we're updating hasn't moved between the read and the write.
      
      Similarly, when amending a commit, make sure that the current tip of the
      branch is the commit we're amending.
      Carlos Martín Nieto committed
  12. 24 Apr, 2014 1 commit
  13. 23 Apr, 2014 1 commit
  14. 22 Apr, 2014 4 commits
    • Use git_diff_get_stats in example/diff + refactor · 8d09efa2
      This takes the `--stat` and related example options in the example
      diff.c program and converts them to use the `git_diff_get_stats`
      API which nicely formats stats for you.
      
      I went to add bar-graph scaling to the stats formatter and noticed
      that the `git_diff_stats` structure was holding on to all of the
      `git_patch` objects.  Unfortunately, each of these objects keeps
      the full text of the diff in memory, so this is very expensive.  I
      ended up modifying `git_diff_stats` to keep just the data that it
      needs to keep and allowed it to release the patches.  Then, I added
      width scaling to the output on top of that.
      
      In making the diff example program match 'git diff' output, I ended
      up removing an newline from the sumamry output which I then had to
      compensate for in the email formatting to match the expectations.
      
      Lastly, I went through and refactored the tests to use a couple of
      helper functions and reduce the overall amount of code there.
      Russell Belfer committed
    • Some doc and examples/diff.c changes · 12e422a0
      I was playing with "git diff-index" and wanted to be able to
      emulate that behavior a little more closely with the diff example.
      
      Also, I wanted to play with running `git_diff_tree_to_workdir`
      directly even though core Git doesn't exactly have the equivalent,
      so I added a command line option for that and tweaked some other
      things in the example code.
      
      This changes a minor output thing in that the "raw" print helper
      function will no longer add ellipses (...) if the OID is not
      actually abbreviated.
      Russell Belfer committed
    • transports: allow the creds callback to say it doesn't exist · bc0a6198
      Allow the credentials callback to return GIT_PASSTHROUGH to make the
      transports code behave as though none was set.
      
      This should make it easier for bindings to behave closer to the C code
      when there is no credentials callback set at their level.
      Carlos Martín Nieto committed
    • remote: provide read access to the callback structure · 2efd7df6
      This should make it easier for bindings to dynamically override their
      own callbacks.
      Carlos Martín Nieto committed
  15. 21 Apr, 2014 3 commits
  16. 20 Apr, 2014 1 commit
  17. 18 Apr, 2014 6 commits
  18. 17 Apr, 2014 2 commits
    • Fix leak in git_index_conflict_cleanup · aba6b5ed
      I introduced a leak into conflict cleanup by removing items from
      inside the git_vector_remove_matching call.  This simplifies the
      code to just use one common way for the two conflict cleanup APIs.
      
      When an index has an active snapshot, removing an item can cause
      an error (inserting into the deferred deletion vector), so I made
      the git_index_conflict_cleanup API return an error code.  I felt
      like this wasn't so bad since it is just like the other APIs.
      
      I fixed up a couple of comments while I was changing the header.
      Russell Belfer committed
    • Add public diff print helpers · 27e54bcf
      The usefulness of these helpers came up for me while debugging
      some of the iterator changes that I was making, so since they
      have also been requested (albeit indirectly) I thought I'd include
      them.
      Russell Belfer committed