1. 20 Jul, 2019 2 commits
    • path: extract function to check whether a path supports symlinks · ded77bb1
      When initializing a repository, we need to check whether its working
      directory supports symlinks to correctly set the initial value of the
      "core.symlinks" config variable. The code to check the filesystem is
      reusable in other parts of our codebase, like for example in our tests
      to determine whether certain tests can be expected to succeed or not.
      
      Extract the code into a new function `git_path_supports_symlinks` to
      avoid duplicate implementations. Remove a duplicate implementation in
      the repo test helper code.
      Patrick Steinhardt committed
    • fileops: rename to "futils.h" to match function signatures · e54343a4
      Our file utils functions all have a "futils" prefix, e.g.
      `git_futils_touch`. One would thus naturally guess that their
      definitions and implementation would live in files "futils.h" and
      "futils.c", respectively, but in fact they live in "fileops.h".
      
      Rename the files to match expectations.
      Patrick Steinhardt committed
  2. 07 Jun, 2019 1 commit
  3. 22 Jan, 2019 1 commit
  4. 01 Dec, 2018 1 commit
  5. 20 Oct, 2018 4 commits
  6. 13 Jul, 2018 1 commit
    • treewide: remove use of C++ style comments · 9994cd3f
      C++ style comment ("//") are not specified by the ISO C90 standard and
      thus do not conform to it. While libgit2 aims to conform to C90, we did
      not enforce it until now, which is why quite a lot of these
      non-conforming comments have snuck into our codebase. Do a tree-wide
      conversion of all C++ style comments to the supported C style comments
      to allow us enforcing strict C90 compliance in a later commit.
      Patrick Steinhardt committed
  7. 10 Jun, 2018 1 commit
  8. 24 May, 2016 1 commit
  9. 01 Dec, 2015 1 commit
  10. 17 Sep, 2015 1 commit
    • git_futils_mkdir_*: make a relative-to-base mkdir · ac2fba0e
      Untangle git_futils_mkdir from git_futils_mkdir_ext - the latter
      assumes that we own everything beneath the base, as if it were
      being called with a base of the repository or working directory,
      and is tailored towards checkout and ensuring that there is no
      bogosity beneath the base that must be cleaned up.
      
      This is (at best) slow and (at worst) unsafe in the larger context
      of a filesystem where we do not own things and cannot do things like
      unlink symlinks that are in our way.
      Edward Thomson committed
  11. 29 Jun, 2015 1 commit
  12. 28 May, 2015 1 commit
  13. 13 May, 2015 1 commit
    • Remove the callbacks struct from the remote · 8f0104ec
      Having the setting be different from calling its actions was not a great
      idea and made for the sake of the wrong convenience.
      
      Instead of that, accept either fetch options, push options or the
      callbacks when dealing with the remote. The fetch options are currently
      only the callbacks, but more options will be moved from setters and
      getters on the remote to the options.
      
      This does mean passing the same struct along the different functions but
      the typical use-case will only call git_remote_fetch() or
      git_remote_push() and so won't notice much difference.
      Carlos Martín Nieto committed
  14. 04 Apr, 2015 1 commit
  15. 27 Feb, 2015 1 commit
  16. 20 Jan, 2015 1 commit
  17. 06 Nov, 2014 1 commit
  18. 13 Oct, 2014 1 commit
  19. 06 Mar, 2014 1 commit
  20. 25 Jan, 2014 1 commit
  21. 14 Nov, 2013 1 commit
  22. 03 Oct, 2013 1 commit
  23. 05 Sep, 2013 2 commits
  24. 04 Sep, 2013 1 commit
    • Make tests take umask into account · 780f3e54
      It seems that libgit2 is correctly applying the umask when
      initializing a repository from a template and when creating new
      directories during checkout, but the test suite is not accounting
      for possible variations due to the umask.  This updates that so
      that the test suite will work regardless of the umask.
      Russell Belfer committed
  25. 29 Jun, 2013 1 commit
  26. 24 Jun, 2013 1 commit
  27. 21 Jun, 2013 2 commits
    • Addition checkout target directory tests · d4f98ba4
      This adds additonal tests of the checkout target directory option
      including using it to dump data from bare repos.
      Russell Belfer committed
    • Add target directory to checkout · 9094ae5a
      This adds the ability for checkout to write to a target directory
      instead of having to use the working directory of the repository.
      This makes it easier to do exports of repository data and the like.
      
      This is similar to, but not quite the same as, the --prefix option
      to `git checkout-index` (this will always be treated as a directory
      name, not just as a simple text prefix).
      
      As part of this, the workdir iterator was extended to take the
      path to the working directory as a parameter and fallback on the
      git_repository_workdir result only if it's not specified.
      
      Fixes #1332
      Russell Belfer committed
  28. 10 Jun, 2013 1 commit
    • Reorganize diff and add basic diff driver · 114f5a6c
      This is a significant reorganization of the diff code to break it
      into a set of more clearly distinct files and to document the new
      organization.  Hopefully this will make the diff code easier to
      understand and to extend.
      
      This adds a new `git_diff_driver` object that looks of diff driver
      information from the attributes and the config so that things like
      function content in diff headers can be provided.  The full driver
      spec is not implemented in the commit - this is focused on the
      reorganization of the code and putting the driver hooks in place.
      
      This also removes a few #includes from src/repository.h that were
      overbroad, but as a result required extra #includes in a variety
      of places since including src/repository.h no longer results in
      pulling in the whole world.
      Russell Belfer committed
  29. 25 Mar, 2013 3 commits
    • Fix up checkout file contents checks · 050ab995
      This fixes of the file contents checks in checkout to give
      slightly better error messages by directly calling the underlying
      clar assertions so the file and line number of the top level call
      can be reported correctly, and renames the helpers to not start
      with "test_" since that is kind of reserved by clar.
      
      This also enables some of the CRLF tests on all platforms that
      were previously Windows only (by pushing a check of the native
      line endings into the test body).
      Russell Belfer committed
    • Test fixes and cleanup · 1098cfae
      This fixes some places where the new tests were leaving the test
      area in a bad state or were freeing data they should not free.
      It also removes code that is extraneous to the core issue and
      fixes an invalid SHA being looked up in one of the tests (which
      was failing, but for the wrong reason).
      Russell Belfer committed
    • Added some tests for issue #1397 · b8acb775
      Signed-off-by: Sven Strickroth <email@cs-ware.de>
      Sven Strickroth committed
  30. 22 Mar, 2013 1 commit
  31. 13 Jan, 2013 1 commit
  32. 12 Jan, 2013 1 commit