1. 22 Oct, 2015 2 commits
  2. 21 Oct, 2015 3 commits
  3. 14 Oct, 2015 2 commits
    • odb: Prioritize alternate backends · a0a1b19a
      For most real use cases, repositories with alternates use them as main
      object storage. Checking the alternate for objects before the main
      repository should result in measurable speedups.
      
      Because of this, we're changing the sorting algorithm to prioritize
      alternates *in cases where two backends have the same priority*. This
      means that the pack backend for the alternate will be checked before the
      pack backend for the main repository *but* both of them will be checked
      before any loose backends.
      Vicent Marti committed
    • revwalk: make commit list use 64 bits for time · 5ffdea6f
      We moved the "main" parsing to use 64 bits for the timestamp, but the
      quick parsing for the revwalk did not. This means that for large
      timestamps we fail to parse the time and thus the walk.
      
      Move this parser to use 64 bits as well.
      Carlos Martín Nieto committed
  4. 05 Oct, 2015 2 commits
  5. 30 Sep, 2015 2 commits
    • refdb and odb backends must provide `free` function · d3b29fb9
      As refdb and odb backends can be allocated by client code, libgit2
      can’t know whether an alternative memory allocator was used, and thus
      should not try to call `git__free` on those objects.
      
      Instead, odb and refdb backend implementations must always provide
      their own `free` functions to ensure memory gets freed correctly.
      Arthur Schreiber committed
    • index: also try conflict mode when inserting · 21515f22
      When we do not trust the on-disk mode, we use the mode of an existing
      index entry.  This allows us to preserve executable bits on platforms
      that do not honor them on the filesystem.
      
      If there is no stage 0 index entry, also look at conflicts to attempt
      to answer this question:  prefer the data from the 'ours' side, then
      the 'theirs' side before falling back to the common ancestor.
      Edward Thomson committed
  6. 29 Sep, 2015 1 commit
  7. 28 Sep, 2015 1 commit
  8. 27 Sep, 2015 2 commits
  9. 25 Sep, 2015 1 commit
    • Fix binary diffs · e4b2b919
      git expects an empty line after the binary data:
      
      literal X
      ...binary data...
      <empty_line>
      
      The last literal block of the generated patches were not containing the required empty line. Example:
      
      	diff --git a/binary_file b/binary_file
      	index 3f1b3f9098131cfecea4a50ff8afab349ea66d22..86e5c1008b5ce635d3e3fffa4434c5eccd8f00b6 100644
      	GIT binary patch
      	literal 8
      	Pc${NM&PdElPvrst3ey5{
      
      	literal 6
      	Nc${NM%g@i}0ssZ|0lokL
      	diff --git a/binary_file2 b/binary_file2
      	index 31be99be19470da4af5b28b21e27896a2f2f9ee2..86e5c1008b5ce635d3e3fffa4434c5eccd8f00b6 100644
      	GIT binary patch
      	literal 8
      	Pc${NM&PdElPvrst3ey5{
      
      	literal 13
      	Sc${NMEKbZyOexL+Qd|HZV+4u-
      
      git apply of that diff results in:
      
      	error: corrupt binary patch at line 9: diff --git a/binary_file2 b/binary_file2
      	fatal: patch with only garbage at line 10
      
      The proper formating is:
      
      	diff --git a/binary_file b/binary_file
      	index 3f1b3f9098131cfecea4a50ff8afab349ea66d22..86e5c1008b5ce635d3e3fffa4434c5eccd8f00b6 100644
      	GIT binary patch
      	literal 8
      	Pc${NM&PdElPvrst3ey5{
      
      	literal 6
      	Nc${NM%g@i}0ssZ|0lokL
      	diff --git a/binary_file2 b/binary_file2
      	index 31be99be19470da4af5b28b21e27896a2f2f9ee2..86e5c1008b5ce635d3e3fffa4434c5eccd8f00b6 100644
      	GIT binary patch
      	literal 8
      	Pc${NM&PdElPvrst3ey5{
      
      	literal 13
      	Sc${NMEKbZyOexL+Qd|HZV+4u-
      Guille -bisho- committed
  10. 23 Sep, 2015 1 commit
  11. 18 Sep, 2015 3 commits
  12. 17 Sep, 2015 4 commits
  13. 16 Sep, 2015 5 commits
  14. 14 Sep, 2015 2 commits
  15. 13 Sep, 2015 4 commits
  16. 12 Sep, 2015 1 commit
  17. 10 Sep, 2015 2 commits
  18. 08 Sep, 2015 2 commits