- 15 Oct, 2012 2 commits
-
-
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 -
We used to require loose references to contain only an OID (possibly after trimming the string). This is however not enough for letting us lookup FETCH_HEAD, which can have a lot of content after the initial OID. Change the parsing rules so that a loose refernce must e at least 40 bytes long and the 41st (if it's there) must be accepted by isspace(3). This makes the trim unnecessary, so only do it for symrefs. This fixes #977.
Carlos Martín Nieto committed
-
- 09 Oct, 2012 2 commits
-
-
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 -
Russell Belfer committed
-
- 27 Sep, 2012 1 commit
-
-
Fixes #921.
Michael Schubert committed
-
- 25 Sep, 2012 1 commit
-
-
nulltoken committed
-
- 22 Sep, 2012 1 commit
-
-
Adjusts refs::list test (including the comments) Adjusts objects::tags::list test
Sascha Cunz committed
-
- 13 Sep, 2012 2 commits
-
-
nulltoken committed
-
There is a bug in building the linked list of line records in the diff iterator and also an off by one element error in the hunk counts. This fixes both of these, adds some test data with more complex sets of hunk and line diffs to exercise this code better.
Russell Belfer committed
-
- 05 Sep, 2012 2 commits
-
-
This should confirm that issue #835 is fixed where a submodule that is only declared in the .gitmodules file was not accessible via the submodule APIs.
Russell Belfer committed -
This refactors the diff output code so that an iterator object can be used to traverse and generate the diffs, instead of just the `foreach()` style with callbacks. The code has been rearranged so that the two styles can still share most functions. This also replaces `GIT_REVWALKOVER` with `GIT_ITEROVER` and uses that as a common error code for marking the end of iteration when using a iterator style of object.
Russell Belfer committed
-
- 24 Aug, 2012 1 commit
-
-
Russell Belfer committed
-
- 22 Aug, 2012 1 commit
-
-
This extends git_repository_init_ext further with support for initializing the repository from an external template directory and with support for the "create shared" type flags that make a set GID repository directory. This also adds tests for much of the new functionality to the existing `repo/init.c` test suite. Also, this adds a bunch of new utility functions including a very general purpose `git_futils_mkdir` (with the ability to make paths and to chmod the paths post-creation) and a file tree copying function `git_futils_cp_r`. Also, this includes some new path functions that were useful to keep the code simple.
Russell Belfer committed
-
- 19 Aug, 2012 1 commit
-
-
nulltoken committed
-
- 12 Aug, 2012 1 commit
-
-
The config file parser was not working right if there was no whitespace between the value name and the equals sign. This fixes that.
Russell Belfer committed
-
- 09 Aug, 2012 2 commits
-
-
Joshua Peek committed
-
Joshua Peek committed
-
- 31 Jul, 2012 1 commit
-
-
Global file mode override now works properly with the file mode stored in the tree node.
Ben Straub committed
-
- 28 Jul, 2012 1 commit
-
-
Renamed git_checkout_index to what it really was, and removed duplicate code from clone.c. Added git_checkout_ref, which updates HEAD and hands off to git_checkout_head. Added tests for the options the caller can pass to git_checkout_*.
Ben Straub committed
-
- 26 Jul, 2012 1 commit
-
-
Sascha Cunz committed
-
- 24 Jul, 2012 1 commit
-
-
nulltoken committed
-
- 16 Jul, 2012 1 commit
-
-
Includes unfinished win32 implementation.
Ben Straub committed
-
- 15 Jul, 2012 1 commit
-
-
nulltoken committed
-
- 13 Jul, 2012 1 commit
-
-
Removed 'bare' option from test repository to allow checkout tests.
Ben Straub committed
-
- 11 Jul, 2012 1 commit
-
-
nulltoken committed
-
- 02 Jul, 2012 1 commit
-
-
Default in git core is 0, not 3
yorah committed
-
- 08 Jun, 2012 1 commit
-
-
File modes were both not being ignored properly on platforms where they should be ignored, nor be diffed consistently on platforms where they are supported. This change adds a number of diff and status filemode change tests. This also makes sure that filemode-only changes are included in the diff output when they occur and that filemode changes are ignored successfully when core.filemode is false. There is no code that automatically toggles core.filemode based on the capabilities of the current platform, so the user still needs to be careful in their .git/config file.
Russell Belfer committed
-
- 07 Jun, 2012 2 commits
-
-
yorah committed
-
git_status_file would always return GIT_ENOTFOUND for these files. The underlying bug was that git__strcmp_cb, which is used by git_path_with_stat_cmp to sort entries in the working directory, compares strings based on unsigned chars (this is confirmed by the strcmp(3) manpage), while git__prefixcmp, which is used by workdir_iterator__entry_cmp to search for a path in the working directory, compares strings based on char. So the sort puts this path at the end of the list, while the search expects it to be at the beginning. The fix was simply to make git__prefixcmp compare using unsigned chars, just like strcmp(3). The rest of the change is just adding/updating tests.
Adam Roben committed
-
- 17 May, 2012 1 commit
-
-
There was a bug where tracked files inside directories that were inside ignored directories where not being found by status. To make that a little clearer, if you have a .gitignore with: ignore/ And then have the following files: ignore/dir/tracked <-- actually a tracked file ignore/dir/untracked <-- should be ignored Then we would show the tracked file as being removed (because when we got the to contained item "dir/" inside the ignored directory, we decided it was safe to skip -- bzzt, wrong!). This update is much more careful about checking that we are not skipping over any prefix of a tracked item, regardless of whether it is ignored or not. As documented in diff.c, this commit does create behavior that still differs from core git with regards to the handling of untracked files contained inside ignored directories. With libgit2, those files will just not show up in status or diff. With core git, those files don't show up in status or diff either *unless* they are explicitly ignored by a .gitignore pattern in which case they show up as ignored files. Needless to say, this is a local behavior difference only, so it should not be important and (to me) the libgit2 behavior seems more consistent.
Russell Belfer committed
-
- 12 May, 2012 1 commit
-
-
Han-Wen Nienhuys committed
-
- 11 May, 2012 2 commits
-
-
Ben Straub committed
-
Added tracking configuration to the test repo's config to support unit tests.
Ben Straub committed
-
- 07 May, 2012 1 commit
-
-
- edf3dce -> assets.github.com/images/icons/emoji/alien.png?v5 - de863bf -> assets.github.com/images/icons/emoji/heart.png?v5
nulltoken committed
-
- 04 May, 2012 1 commit
-
-
Russell Belfer committed
-
- 03 May, 2012 1 commit
-
-
Depending on the operation, we need to consider gitattributes in both the work dir and the index. This adds a parameter to all of the gitattributes related functions that allows user control of attribute reading behavior (i.e. prefer workdir, prefer index, only use index). This fix also covers allowing us to check attributes (and hence do diff and status) on bare repositories. This was a somewhat larger change that I hoped because it had to change the cache key used for gitattributes files.
Russell Belfer committed
-
- 02 May, 2012 2 commits
-
-
Vicent Martí committed
-
Vicent Martí committed
-
- 31 Mar, 2012 1 commit
-
-
Removed the BUILD_CLAR CMake flag, and updated the readme.
Ben Straub committed
-