1. 03 Feb, 2011 1 commit
    • Use Git's own tree entry sorting algorithm · 35786cb7
      If plain strcmp is used, as this code did before, the final sorting may
      end up different from what git-add would do (for example, 'boost'
      appearing before 'boost-build.jam', because Git sorts as if it were
      spelled 'boost/').
      
      If the sorting is incorrect like this, Git 1.7.4 insists that unmodified
      files have been modified.  For example, my test repository has these
      four entries:
      
      drwxr-xr-x  199 johnw  wheel   6766 Feb  2 17:21 boost
      -rw-r--r--    1 johnw  wheel    849 Feb  2 17:22 boost-build.jam
      -rw-r--r--    1 johnw  wheel    989 Feb  2 17:21 boost.css
      -rw-r--r--    1 johnw  wheel   6308 Feb  2 17:21 boost.png
      
      Here is the output from git-ls-tree for these files, in a commit tree
      created using git-add and git-commit:
      
      100644 blob 8b8775433aef73e9e12609610ae2e35cf1e7ec2c    boost-build.jam
      100644 blob 986c4050fa96d825a1311c8e871cdcc9a3e0d2c3    boost.css
      100644 blob b4d51fcd5c9149fd77f5ca6ed2b6b1b70e8fe24f    boost.png
      040000 tree 46537eeaa4d577010f19b1c9e940cae9a670ff5c    boost
      
      Here is the output for the same commit produced using libgit2:
      
      040000 tree c27c0fd1436f28a6ba99acd0a6c17d178ed58288	boost
      100644 blob 8b8775433aef73e9e12609610ae2e35cf1e7ec2c	boost-build.jam
      100644 blob 986c4050fa96d825a1311c8e871cdcc9a3e0d2c3	boost.css
      100644 blob b4d51fcd5c9149fd77f5ca6ed2b6b1b70e8fe24f	boost.png
      
      Due to this reordering, git-status claims the three blobs are always
      modified, no matter what I do using git-read-tree or git-reset or
      git-checkout to update the index.
      John Wiegley committed
  2. 01 Feb, 2011 4 commits
  3. 30 Jan, 2011 1 commit
    • Refactor reference parsing code · 2f8a8ab2
      Several changes have been committed to allow the user to create
      in-memory references and write back to disk. Peeling of symbolic
      references has been made explicit. Added getter and setter methods for
      all attributes on a reference. Added corresponding documentation.
      
      Signed-off-by: Vicent Marti <tanoku@gmail.com>
      Vicent Marti committed
  4. 29 Jan, 2011 9 commits
  5. 20 Jan, 2011 5 commits
  6. 13 Jan, 2011 2 commits
  7. 11 Jan, 2011 4 commits
  8. 10 Jan, 2011 2 commits
  9. 08 Jan, 2011 6 commits
  10. 03 Jan, 2011 4 commits
  11. 29 Dec, 2010 1 commit
    • Add generic hash function to util.c · e0646b38
      It's MurmurHash3 slightly edited to make it
      cross-platform. Fast and neat.
      
      Use this for hashing strings on hash tables instead
      of a full SHA1 hash. It's very fast and well distributed.
      
      Obviously not crypto-secure.
      
      Signed-off-by: Vicent Marti <tanoku@gmail.com>
      Vicent Marti committed
  12. 26 Dec, 2010 1 commit