|
9e37305a
|
2012-10-16T08:34:28
|
|
Merge pull request #984 from arrbee/fix-fnmatch-and-ignore
Fix single file ignores
|
|
add5efe7
|
2012-10-16T00:49:05
|
|
test: fix some memory leaks
|
|
71b79a0a
|
2012-10-15T15:24:50
|
|
Merge pull request #982 from nulltoken/clone/no-checkout
clone: Explicit support of no-checkout option
|
|
52032ae5
|
2012-10-15T12:48:43
|
|
Fix single-file ignore checks
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.
|
|
68206c54
|
2012-10-13T21:00:45
|
|
test: fix some memory leaks
|
|
fa5d94a0
|
2012-10-13T20:51:57
|
|
reset: prevent hard reset in a bare repository
|
|
c4f68b32
|
2012-10-15T07:06:22
|
|
clone: fix detection of remote HEAD
|
|
4d968f13
|
2012-10-15T06:12:57
|
|
clone: Explicit support of no-checkout option
|
|
86a2da6e
|
2012-10-10T15:10:07
|
|
Clone: use libgit2's test repos
|
|
65415ea2
|
2012-10-10T10:34:26
|
|
Tests: add "network" category
Split the clone tests into network and no-network suites.
|
|
7ae5ab56
|
2012-10-15T16:35:10
|
|
Fix leak in the tests
Also introduce the slective ref trimming promised but also missed in
the previous commit.
|
|
47f44b6e
|
2012-10-15T13:51:25
|
|
refs: loosen the OID parsing
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.
|
|
b73200c1
|
2012-10-11T14:15:40
|
|
tags: cover EEXISTS propagation upon creation
|
|
6251de1d
|
2012-10-11T14:09:27
|
|
branches: cover EEXISTS propagation upon moving
|
|
62993b61
|
2012-10-11T14:08:32
|
|
branches: propagate EEXISTS upon creation
|
|
3548fcf5
|
2012-10-11T14:00:26
|
|
refs: propagate EEXISTS upon renaming
|
|
a75770fe
|
2012-10-10T14:57:05
|
|
tests: add a test for tag autofollow behaviour
Also tell ctest and valgrind to run libgit2_clar with '-iall' so we
run the network tests in travis.
|
|
2d3579be
|
2012-10-10T14:54:31
|
|
Add git_buf_put_base64 to buffer API
|
|
8ea05f3f
|
2012-10-09T15:25:58
|
|
Fix clar issue
|
|
0bc47b63
|
2012-10-09T15:13:00
|
|
Update to latest clar
|
|
0a32dca5
|
2012-08-19T22:26:32
|
|
gsoc-pack-objects WIP
|
|
21e0d297
|
2012-10-09T11:45:50
|
|
Merge pull request #967 from arrbee/diff-submodule-tests-and-fixes
Diff submodule tests and fixes
|
|
aa4437f6
|
2012-10-09T00:51:43
|
|
Fix compiler warnings
* tests-clar/status: remove an unused variable
* clone: fix -Wmaybe-uninitialized warning
|
|
9adfa7d1
|
2012-10-08T15:25:44
|
|
Merge pull request #949 from nulltoken/topic/deploy_repository_set_head
Deploy git_repository_set_head()
|
|
5d1308f2
|
2012-10-08T15:19:00
|
|
Add test for diffs with submodules and bug fixes
The adds a test for the submodule diff capabilities and then
fixes a few bugs with how the output is generated. It improves
the accuracy of OIDs in the diff delta object and makes the
submodule output more closely mirror the OIDs that will be used
by core git.
|
|
71966e2f
|
2012-10-08T15:18:30
|
|
Extend diff helpers for tests a little
|
|
edb456c3
|
2012-10-08T16:32:43
|
|
Fix a bug where ignorecase wasn't applied to ignores
|
|
bf0e62a2
|
2012-10-07T12:50:18
|
|
clone: fix cloning of empty repository
|
|
ebecf1e7
|
2012-10-07T12:04:07
|
|
clone: reorganize tests
|
|
0c78f685
|
2012-10-06T10:41:53
|
|
branch: introduce git_branch_is_head()
|
|
b52b6571
|
2012-09-22T12:42:16
|
|
branch: enhance branch moving test coverage
|
|
f9cf12b4
|
2012-10-02T20:23:54
|
|
clar: Proper shutdown order
|
|
d0b452db
|
2012-10-02T11:08:30
|
|
Merge pull request #932 from ben/clone_pack_race
ODB: re-load packfiles on failed lookup
|
|
eada0762
|
2012-10-02T10:45:40
|
|
Merge pull request #939 from pwkelley/ignorecase
Support for the core.ignorecase flag
|
|
8bc5cacc
|
2012-10-01T13:57:32
|
|
Merge pull request #961 from arrbee/win64-cleanups
Win64 cleanups
|
|
c1281493
|
2012-09-30T11:37:53
|
|
refs: propagate EEXISTS
Indicate whether the error comes from the ref already existing or
elsewhere. We always perform the check and this lets the user write
more concise code.
|
|
3665ba8e
|
2012-09-27T12:04:41
|
|
refspec: add git_refspec__free, remove git_refspec_parse
The latter shouldn't be exposed and isn't used, git_refspec__parse
supersedes it.
Fix a leak in the refspec tests while we're at it.
|
|
cc5bf359
|
2012-09-28T09:08:09
|
|
Clean up Win64 warnings
|
|
34402bcd
|
2012-09-28T11:57:02
|
|
Merge pull request #959 from jamill/empty_file_hash
Fix error hashing empty file.
|
|
3f849902
|
2012-09-28T11:48:43
|
|
Merge pull request #958 from schu/fix-merge-base
revwalk: fix off-by-one error
|
|
addc9be4
|
2012-09-26T17:21:32
|
|
Fix error hashing empty file.
|
|
8060cdc9
|
2012-09-27T14:59:43
|
|
revwalk: fix off-by-one error
Fixes #921.
|
|
bae957b9
|
2012-09-25T16:31:46
|
|
Add const to all shared pointers in diff API
There are a lot of places where the diff API gives the user access
to internal data structures and many of these were being exposed
through non-const pointers. This replaces them all with const
pointers for any object that the user can access but is still
owned internally to the git_diff_list or git_diff_patch objects.
This will probably break some bindings... Sorry!
|
|
64286308
|
2012-09-25T10:48:50
|
|
Fix bugs in new diff patch code
This fixes all the bugs in the new diff patch code. The only
really interesting one is that when we merge two diffs, we now
have to actually exclude diff delta records that are not supposed
to be tracked, as opposed to before where they could be included
because they would be skipped silently by `git_diff_foreach()`.
Other than that, there are just minor errors.
|
|
5f69a31f
|
2012-09-24T20:52:34
|
|
Initial implementation of new diff patch API
Replacing the `git_iterator` object, this creates a simple API
for accessing the "patch" for any file pair in a diff list and
then gives indexed access to the hunks in the patch and the lines
in the hunk. This is the initial implementation of this revised
API - it is still broken, but at least builds cleanly.
|
|
5942bd18
|
2012-09-25T14:53:13
|
|
Merge pull request #947 from arrbee/public-error-set
Make giterr_set_str() and giterr_set_oom() public APIs
|
|
31d22037
|
2012-09-25T14:52:24
|
|
Merge pull request #944 from scunz/list_tags
Tags: teach git_tag_list not to include the 'refs/tags/' prefix
|
|
0adfa20a
|
2012-09-11T11:42:13
|
|
refspec: introduce git_refspec__parse()
|
|
77e06d7e
|
2012-09-17T07:11:32
|
|
refs: introduce git_reference_is_valid_name()
|
|
c030ada7
|
2012-09-11T12:06:57
|
|
refs: make git_reference_normalize_name() accept refspec pattern
|
|
8469219e
|
2012-09-22T23:11:26
|
|
Tests: Add test for git_tag_list to check for 'git tag -l "*bar"'
|
|
daa70138
|
2012-09-22T23:04:45
|
|
Tests: reindent object/tag/list.c to use tabs
|
|
45949b37
|
2012-09-21T01:53:15
|
|
Tests::object::tag: also test for a 'foo/*/bar'.
|
|
7604ddbf
|
2012-09-21T00:57:21
|
|
Tests: Add 3 tags to resources/testrepo.
Adjusts refs::list test (including the comments)
Adjusts objects::tags::list test
|
|
e800bbe8
|
2012-09-21T00:32:53
|
|
Tests::Object::Tag: Add a mechanism to test which tags were returned
This patch changes the tag listing test helper to use a struct as input
parameter, which tells what we exactly expect.
As I don't think, we can rely on the fact that every os and every
filesystem will report the tags in the same order, I made this code
independent of the order that the tags are retrieved.
|
|
f73f760e
|
2012-09-20T23:49:17
|
|
Tests::Object::Tag: move listing tags tests to an own file
|
|
1a628100
|
2012-09-21T15:04:39
|
|
Make giterr_set_str public
There has been discussion for a while about making some set of
the `giterr_set` type functions part of the public API for code
that is implementing new backends to libgit2. This makes the
`giterr_set_str()` and `giterr_set_oom()` functions public.
|
|
9e592583
|
2012-09-19T12:23:47
|
|
checkout: add notification callback for skipped files
|
|
5bb0dc93
|
2012-09-13T14:02:46
|
|
ODB: re-load packfiles on failed lookup
The old method was avoiding re-loading of packfiles by watching the mtime of the
pack directory. This causes the ODB to become stale if the directory and packfile
are written within the same clock millisecond, as when cloning a fairly small
repo.
This method tries to find the object in the cached packs, and forces a refresh when
that fails. This will cause extra stat'ing on a miss, but speeds up the success
case and avoids this race condition.
|
|
ec40b7f9
|
2012-09-17T15:42:41
|
|
Support for core.ignorecase
|
|
39783719
|
2012-09-17T20:27:28
|
|
checkout: Mimic git_diff_options storage of paths
|
|
44af67a8
|
2012-09-15T22:07:45
|
|
repository: introduce git_repository_set_head()
|
|
4ebe38bd
|
2012-09-15T22:07:09
|
|
repository: introduce git_repository_set_head_detached()
|
|
3f4c3072
|
2012-09-15T22:03:31
|
|
repository: introduce git_repository_detach_head()
|
|
f1ad25f6
|
2012-09-15T12:44:07
|
|
repository: separate head related tests
|
|
10df95c3
|
2012-09-15T12:23:49
|
|
checkout: add test coverage of dirs and subtrees
|
|
c214fa1c
|
2012-09-06T15:15:46
|
|
checkout: segregate checkout strategies
|
|
020cda99
|
2012-09-14T16:45:24
|
|
checkout: separate tree from index related tests
|
|
ee8bb8ba
|
2012-08-19T21:24:51
|
|
reset: add support for GIT_RESET_HARD mode
|
|
3aa443a9
|
2012-08-20T16:56:45
|
|
checkout: introduce git_checkout_tree()
|
|
c2948c77
|
2012-09-14T21:36:49
|
|
refs: prevent locked refs from being enumerated
Fix #936
|
|
d973a5af
|
2012-09-13T14:20:43
|
|
Merge pull request #929 from arrbee/diff-iter-fixes
Fix problems in diff iterator record chaining
|
|
e16fc07f
|
2012-09-13T22:22:40
|
|
refspec: No remote tracking ref from a fetchspec-less remote
|
|
49d34c1c
|
2012-09-13T13:17:38
|
|
Fix problems in diff iterator record chaining
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.
|
|
a13fb55a
|
2012-09-11T17:26:21
|
|
Add tests and improve param checks
Fixed some minor `git_repository_hashfile` issues:
- Fixed incorrect doc (saying that repo could be NULL)
- Added checking of object type value to acceptable ones
- Added more tests for various parameter permutations
|
|
47bfa0be
|
2012-09-07T13:27:49
|
|
Add git_repository_hashfile to hash with filters
The existing `git_odb_hashfile` does not apply text filtering
rules because it doesn't have a repository context to evaluate
the correct rules to apply. This adds a new hashfile function
that will apply repository-specific filters (based on config,
attributes, and filename) before calculating the hash.
|
|
412293dc
|
2012-09-11T23:38:16
|
|
Merge branch 'diff-crlf-filters' into development
|
|
1f35e89d
|
2012-09-11T12:03:33
|
|
Fix diff binary file detection
In the process of adding tests for the max file size threshold
(which treats files over a certain size as binary) there seem to
be a number of problems in the new code with detecting binaries.
This should fix those up, as well as add a test for the file
size threshold stuff.
Also, this un-deprecates `GIT_DIFF_LINE_ADD_EOFNL`, since I
finally found a legitimate situation where it would be returned.
|
|
eff14d38
|
2012-09-10T23:15:54
|
|
Merge pull request #906 from nulltoken/topic/git_reference_peel
git reference peel
|
|
b36effa2
|
2012-09-10T09:59:14
|
|
Replace git_diff_iterator_num_files with progress
The `git_diff_iterator_num_files` API was problematic, since we
don't actually know the exact number of files to be iterated over
until we load those files into memory. This replaces it with a
new `git_diff_iterator_progress` API that goes from 0 to 1, and
moves and renamed the old API for the internal places that can
tolerate a max value instead of an exact value.
|
|
17b06f4d
|
2012-09-07T15:49:08
|
|
Add missing accessor for fetchRecurseSubmodules
When `git_submodule` became an opaque structure, I forgot to add
accessor functions for the fetchRecurseSubmodules config setting.
This fixes that.
|
|
60b9d3fc
|
2012-09-05T15:00:40
|
|
Implement filters for status/diff blobs
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.
|
|
f8e2cc9a
|
2012-08-31T15:53:47
|
|
Alternate test for autocrlf with status
I couldn't get the last failing test to actually fail. This
is a different test suggested by @nulltoken which should fail.
|
|
52462e1c
|
2012-05-13T10:11:13
|
|
Test case to reproduce issue #690.
Staged file status does not handle CRLF correctly. Ensures that the test repo has core.autocrlf=true for the test to fail.
|
|
cf4c43ab
|
2012-09-04T11:17:46
|
|
object: make git_object_peel() test more readable
|
|
ced8d142
|
2012-08-22T11:30:55
|
|
errors: deploy GIT_EBAREREPO usage
|
|
31665948
|
2012-08-24T21:30:45
|
|
refs: introduce git_reference_peel()
Fix #530
|
|
2e4a9ea9
|
2012-09-06T10:08:14
|
|
Merge remote-tracking branch 'arrbee/diff-iterator' into development
|
|
fed886d9
|
2012-09-05T15:54:32
|
|
Test for gitmodules only submodule def
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.
|
|
f335ecd6
|
2012-08-30T14:24:16
|
|
Diff iterators
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.
|
|
4d383403
|
2012-09-04T14:19:24
|
|
Merge pull request #856 from libgit2/utf8-win
Windows: Perform UTF-8 path conversion on the Stack
|
|
925be045
|
2012-09-04T15:40:05
|
|
clar: Clear errors on shutdown
|
|
89cd5708
|
2012-08-29T14:20:53
|
|
repository: make initialization cope with missing core.worktree
|
|
0f4c6175
|
2012-08-28T22:19:08
|
|
Add bounds checking to UTF-8 conversion
|
|
6813169a
|
2012-08-06T12:45:59
|
|
windows: Keep UTF-8 on the stack yo
|
|
62eafd06
|
2012-08-27T14:54:52
|
|
Merge branch 'branch-delete-ref' into development
Conflicts:
include/git2/refs.h
|
|
bd2887a5
|
2012-08-27T14:52:26
|
|
Merge pull request #904 from arrbee/better-object-peel
Make git_object_peel a bit smarter
|
|
b9d283d1
|
2012-08-27T13:39:17
|
|
Merge pull request #897 from nulltoken/topic/git_reference_check_format
refs: expose git_reference_normalize_name()
|
|
d8057a5b
|
2012-08-27T11:53:59
|
|
Make git_object_peel a bit smarter
This expands the types of peeling that `git_object_peel` knows
how to do to include TAG -> BLOB peeling, and makes the errors
slightly more consistent depending on the situation. It also
adds a new special behavior where peeling to ANY will peel until
the object type changes (e.g. chases TAGs to a non-TAG).
Using this expanded peeling, this replaces peeling code that was
embedded in `git_tag_peel` and `git_reset`.
|
|
4e323ef0
|
2012-08-27T10:51:01
|
|
revwalk: refuse push of non-commit objects
Check the type of the pushed object immediately instead of starting the
walk and failing in between.
|