1. 18 Jan, 2013 1 commit
  2. 15 Jan, 2013 2 commits
  3. 12 Jan, 2013 1 commit
  4. 03 Jan, 2013 3 commits
  5. 03 Dec, 2012 1 commit
  6. 30 Nov, 2012 1 commit
  7. 27 Nov, 2012 2 commits
  8. 20 Nov, 2012 1 commit
  9. 09 Nov, 2012 1 commit
    • Extensions to rmdir and mkdir utilities · 331e7de9
      * Rework GIT_DIRREMOVAL values to GIT_RMDIR flags, allowing
        combinations of flags
      * Add GIT_RMDIR_EMPTY_PARENTS flag to remove parent dirs that
        are left empty after removal
      * Add GIT_MKDIR_VERIFY_DIR to give an error if item is a file,
        not a dir (previously an EEXISTS error was ignored, even for
        files) and enable this flag for git_futils_mkpath2file call
      * Improve accuracy of error messages from git_futils_mkdir
      Russell Belfer committed
  10. 30 Oct, 2012 1 commit
  11. 20 Oct, 2012 1 commit
    • index: remove read_tree() progress indicator · 0ae81fc4
      git_index_read_tree() was exposing a parameter to provide the user with
      a progress indicator. Unfortunately, due to the recursive nature of the
      tree walk, the maximum number of items to process was unknown. Thus,
      the indicator was only counting processed entries, without providing
      any information how the number of remaining items.
      nulltoken committed
  12. 19 Oct, 2012 1 commit
  13. 18 Oct, 2012 1 commit
  14. 16 Oct, 2012 1 commit
  15. 15 Oct, 2012 1 commit
    • Fix single-file ignore checks · 52032ae5
      To answer if a single given file should be ignored, the path to
      that file has to be processed progressively checking that there
      are no intermediate ignored directories in getting to the file
      in question.  This enables that, fixing the broken old behavior,
      and adds tests to exercise various ignore situations.
      Russell Belfer committed
  16. 09 Oct, 2012 2 commits
    • Add complex checkout test and then fix checkout · 0d64bef9
      This started as a complex new test for checkout going through the
      "typechanges" test repository, but that revealed numerous issues
      with checkout, including:
      
      * complete failure with submodules
      * failure to create blobs with exec bits
      * problems when replacing a tree with a blob because the tree
        "example/" sorts after the blob "example" so the delete was
        being processed after the single file blob was created
      
      This fixes most of those problems and includes a number of other
      minor changes that made it easier to do that, including improving
      the TYPECHANGE support in diff/status, etc.
      Russell Belfer committed
    • Fix compiler warnings · aa4437f6
      * tests-clar/status: remove an unused variable
      * clone: fix -Wmaybe-uninitialized warning
      Michael Schubert committed
  17. 08 Oct, 2012 1 commit
  18. 27 Sep, 2012 1 commit
  19. 17 Sep, 2012 1 commit
  20. 06 Sep, 2012 3 commits
    • Implement filters for status/diff blobs · 60b9d3fc
      This adds support to diff and status for running filters (a la crlf)
      on blobs in the workdir before computing SHAs and before generating
      text diffs.  This ended up being a bit more code change than I had
      thought since I had to reorganize some of the diff logic to minimize
      peak memory use when filtering blobs in a diff.
      
      This also adds a cap on the maximum size of data that will be loaded
      to diff.  I set it at 512Mb which should match core git.  Right now
      it is a #define in src/diff.h but it could be moved into the public
      API if desired.
      Russell Belfer committed
    • Alternate test for autocrlf with status · f8e2cc9a
      I couldn't get the last failing test to actually fail.  This
      is a different test suggested by @nulltoken which should fail.
      Russell Belfer committed
    • Test case to reproduce issue #690. · 52462e1c
      Staged file status does not handle CRLF correctly. Ensures that the test repo has core.autocrlf=true for the test to fail.
      pontusm committed
  21. 24 Aug, 2012 3 commits
    • Fix crash with adding internal ignores · 11684104
      Depending on what you had done before adding new items to the
      internal ignores list, it was possible for the cache of ignore
      data to be uninitialized.
      Russell Belfer committed
    • Working implementation of git_submodule_status · 5f4a61ae
      This is a big redesign of the git_submodule_status API and the
      implementation of the redesigned API.  It also fixes a number of
      bugs that I found in other parts of the submodule API while
      writing the tests for the status part.
      
      This also fixes a couple of bugs in the iterators that had not
      been noticed before - one with iterating when there is a gitlink
      (i.e. separate-work-dir) and one where I was treating anything
      even vaguely submodule-like as a submodule, more aggressively
      than core git does.
      Russell Belfer committed
    • Major submodule rewrite · aa13bf05
      This replaces the old submodule API with a new extended API that
      supports most of the things that can be done with `git submodule`.
      Russell Belfer committed
  22. 23 Aug, 2012 1 commit
  23. 22 Aug, 2012 1 commit
  24. 04 Aug, 2012 1 commit
    • Update iterators for consistency across library · 5dca2010
      This updates all the `foreach()` type functions across the library
      that take callbacks from the user to have a consistent behavior.
      The rules are:
      
      * A callback terminates the loop by returning any non-zero value
      * Once the callback returns non-zero, it will not be called again
        (i.e. the loop stops all iteration regardless of state)
      * If the callback returns non-zero, the parent fn returns GIT_EUSER
      * Although the parent returns GIT_EUSER, no error will be set in
        the library and `giterr_last()` will return NULL if called.
      
      This commit makes those changes across the library and adds tests
      for most of the iteration APIs to make sure that they follow the
      above rules.
      Russell Belfer committed
  25. 30 Jul, 2012 1 commit
  26. 25 Jul, 2012 1 commit
  27. 24 Jul, 2012 3 commits
  28. 11 Jul, 2012 1 commit
    • Add flag to write gitlink on setting repo workdir · 991a56c7
      This added a flag to the `git_repository_set_workdir()` function
      that enables generation of a `.git` gitlink file that links the
      new workdir to the parent repository.  Essentially, the flag tells
      the function to write out the changes to disk to permanently set
      the workdir of the repository to the new path.
      
      If you pass this flag as true, then setting the workdir to something
      other than the default workdir (i.e. the parent of the .git repo
      directory), will create a plain file named ".git" with the standard
      gitlink contents "gitdir: <repo-path>", and also update the
      "core.worktree" and "core.bare" config values.
      
      Setting the workdir to the default repo workdir will clear the
      core.worktree flag (but still permanently set core.bare to false).
      
      BTW, the libgit2 API does not currently provide a function for
      clearing the workdir and converting a non-bare repo into a bare one.
      Russell Belfer committed
  29. 09 Jun, 2012 1 commit