|
0e8e5a61
|
2013-02-03T11:44:26
|
|
revparse: Lookup sha before branch
|
|
545b479a
|
2013-02-02T17:36:20
|
|
revparse: Lookup branch before described tag
Fix #1306
|
|
329eee33
|
2013-02-01T09:41:50
|
|
Merge pull request #1286 from lznuaa/master
Fix clone fail if repo head detached
|
|
aa928de0
|
2013-01-29T17:26:42
|
|
Add test case for clone head detached repo
Signed-off-by: Frank Li <lznuaa@gmail.com>
Signed-off-by: nulltoken <emeric.fermas@gmail.com>
|
|
e5ef0f18
|
2013-01-31T20:23:30
|
|
refs: handle ALLOW_ONELEVEL normalization with leading slash
A leading slash confuses the name normalization code when the flags
include ALLOW_ONELEVEL. Catch this case in particular to avoid
triggering an assertion in the uppercase check which expects us not to
pass it an empty string.
The existing tests don't catch this as they simply use the NORMAL
flag.
This fixes #1300.
|
|
3bf68be4
|
2013-01-30T11:25:20
|
|
Free buffer at end of test
|
|
f1e2735c
|
2013-01-30T11:10:39
|
|
Add helper for diff line stats
This adds a `git_diff_patch_line_stats()` API that gets the total
number of adds, deletes, and context lines in a patch. This will
make it a little easier to emulate `git diff --stat` and the like.
Right now, this relies on generating the `git_diff_patch` object,
which is a pretty heavyweight way to get stat information. At
some future point, it would probably be nice to be able to get
this information without allocating the entire `git_diff_patch`,
but that's a much larger project.
|
|
d2041216
|
2013-01-29T13:57:53
|
|
Merge pull request #1296 from arrbee/stricter-config-name-checks
Stricter config entry name validation
|
|
4657fc1c
|
2013-01-29T13:54:08
|
|
Merge pull request #1285 from phkelley/vector
Vector improvements and their fallout
|
|
501d35cc
|
2013-01-29T12:16:59
|
|
Test config name validation
This is @nulltoken's work to test various invalid config section
and key names and make sure we are validating properly.
|
|
17c92bea
|
2013-01-29T12:13:24
|
|
Test buf join with NULL behavior explicitly
|
|
96447d24
|
2013-01-28T16:13:19
|
|
Fix 2 bugs in online::push tests.
- Fix stack corruption introduced in 9bccf33c due to passing pointer to
local variable _cred_acquire_called.
- Fix strcmp in do_verify_push_status when expected or actual push_status
is NULL
|
|
11d9f6b3
|
2013-01-27T14:17:07
|
|
Vector improvements and their fallout
|
|
4adb4815
|
2013-01-25T20:37:39
|
|
Merge pull request #1278 from sba1/cl-assert-equal-s
Use cl_assert_equal_s() instead of strcmp().
|
|
cfc39f50
|
2013-01-25T22:43:52
|
|
Fix 3 memory leaks
|
|
9f35754a
|
2013-01-25T13:29:28
|
|
config: support trailing backslashes
Check whether the backslash at the end of the line is being escaped or
not so as not to consider it a continuation marker when it's e.g. a
Windows-style path.
|
|
26ec6a6d
|
2013-01-24T20:38:01
|
|
tests-clar: ifdef GIT_WIN32 win helper functions
|
|
a7f8065f
|
2013-01-25T06:48:55
|
|
Use cl_assert_equal_s() instead of strcmp().
Replaced all cl_assert(!strcmp()) or semantically equivalent forms
by cl_assert_equal_s().
|
|
c253056d
|
2013-01-24T20:44:17
|
|
Added git_branch_name().
This is a convenience function to get the branch name of a given
ref. The returned branch name is compatible with the name that can
be supplied e.g. to git_branch_lookup(). That is, the prefixes
"refs/heads" or "refs/remotes" are omitted.
Also added a new test for testing the new function.
|
|
2ff4469a
|
2013-01-24T14:04:35
|
|
Leak cleanup in push tests
|
|
3fbd7485
|
2013-01-24T11:03:11
|
|
Merge pull request #1250 from jamill/push_update_tips
Update remote tips on push
|
|
0d52cb4a
|
2013-01-24T00:09:55
|
|
opts: Some basic tests
|
|
8958fad7
|
2013-01-22T16:02:43
|
|
Merge pull request #1270 from libgit2/packed-peeled-objects-fix
Allow peeled references without trailing newline at end of file
|
|
5c7b77c4
|
2013-01-22T16:01:03
|
|
Seperate out a new test that verifies packed-refs with no trailing newline
as per @vmg's request
|
|
cb35094b
|
2013-01-22T15:49:51
|
|
Allow peeled references without trailing newline at end of file
Also ammends one of the tag tests to make sure it's working.
|
|
cce548e3
|
2013-01-22T15:28:25
|
|
Fix case sensitivity bug with tree iterators
With the new code to make tree iterators support ignore_case,
there is a bug in setting the start entry for range bounded
iterators where memcmp was being used instead of strncasecmp.
This fixes that and expands the tree iterator test to cover
the cases that were broken.
|
|
1d645aab
|
2013-01-17T10:20:33
|
|
Update remote tips on push
|
|
e8a92fe1
|
2013-01-21T13:39:53
|
|
Update clar to a80e7f30
|
|
965e4e2d
|
2013-01-21T13:19:41
|
|
Parse commit time as uint64_t to avoid overflow
The commit time is already stored as a git_time_t, but we were
parsing is as a uint32_t. This just switches the parser to use
uint64_t which will handle dates further in the future (and adds
some tests of those future dates).
|
|
c55c6244
|
2013-01-18T13:22:55
|
|
Fix linking error caused by ddcb28a41f3774e26fc6ae0a7174a5565e4749ce.
|
|
ddcb28a4
|
2013-01-17T16:56:57
|
|
Merge pull request #1239 from ethomson/index_remove
add an index_remove_bypath that removes conflicts
|
|
3a93ab90
|
2013-01-17T16:33:40
|
|
Merge pull request #1256 from arrbee/asciify-test-data
Move all non-ascii test data to raw hex
|
|
271680d7
|
2013-01-17T18:18:44
|
|
add a git config, don't run crlf tests on non-win32
|
|
f63d0ee9
|
2013-01-17T15:47:10
|
|
Move all non-ascii test data to raw hex
This takes all of the characters in core::env and makes them use
hex sequences instead of keeping tricky character data inline in
the test.
|
|
c49fa037
|
2013-01-17T13:37:32
|
|
Merge pull request #1247 from sba1/dont-segfault-if-transport-doesnt-support-push
Don't segfault if transport doesn't support push.
|
|
5c8901ab
|
2013-01-17T13:36:33
|
|
Merge pull request #1255 from arrbee/fix-signed-commit-header-parsing
Add skipping of unknown commit headers
|
|
b90eb84f
|
2013-01-17T22:27:04
|
|
Test that pushs properly fail for transports that don't provide a push implementation.
|
|
291090a0
|
2013-01-17T13:19:09
|
|
Add skipping of unknown commit headers
This moves the check for the "encoding" header into a loop which
is just scanning for non-required headers at the end of a commit
header. That loop will skip unrecognized lines (including header
continuation lines) until a terminating completely blank line is
found, and only then does it move to reading the commit message.
|
|
6e959708
|
2013-01-17T13:11:57
|
|
cache should contain on-disk (filtered) file size
|
|
34a4ad46
|
2013-01-16T15:52:58
|
|
Merge pull request #1211 from arrbee/fix-icase-status-file
Fix case insensitivity issues in git_status_file
|
|
bf031581
|
2013-01-14T14:22:11
|
|
branch: Introduce git_branch_tracking_name()
|
|
25423d03
|
2013-01-09T16:07:54
|
|
Support case insensitive tree iterators and status
This makes tree iterators directly support case insensitivity by
using a secondary index that can be sorted by icase. Also, this
fixes the ambiguity check in the git_status_file API to also be
case insensitive. Lastly, this adds new test cases for case
insensitive range boundary checking for all types of iterators.
With this change, it should be possible to deprecate the spool
and sort iterator, but I haven't done that yet.
|
|
a49340c3
|
2013-01-08T15:56:11
|
|
Test for ignore_case ranges on workdir iterator
This adds a test that confirms that the working directory iterator
can actually correctly process ranges of files case insensitively
with proper sorting and proper boundaries.
|
|
134d8c91
|
2013-01-08T15:53:13
|
|
Update iterator API with flags for ignore_case
This changes the iterator API so that flags can be passed in to
the constructor functions to control the ignore_case behavior.
At this point, the flags are not supported on tree iterators (i.e.
there is no functional change over the old API), but the API
changes are all made to accomodate this.
By the way, I went with a flags parameter because in the future
I have a couple of other ideas for iterator flags that will make
it easier to fix some diff/status/checkout bugs.
|
|
4b181037
|
2013-01-08T13:39:15
|
|
Minor iterator API cleanups
In preparation for further iterator changes, this cleans up a few
small things in the iterator API:
* removed the git_iterator_for_repo_index_range API
* made git_iterator_free not be inlined
* minor param name and test function name tweaks
|
|
bcbb1e20
|
2013-01-05T20:58:25
|
|
status: Enhance git_status_file() test coverage
|
|
230010d1
|
2013-01-15T09:46:50
|
|
Merge pull request #1238 from nulltoken/fix/checkout-index
checkout: Teach checkout to cope with orphaned Head
|
|
848d77dc
|
2013-01-14T10:05:35
|
|
Merge pull request #1242 from sba1/init-with-template-fix
Some fixes for external template support
|
|
72719e73
|
2013-01-13T12:21:52
|
|
Altered the description of the template.
Before, it was identical to the default template making it difficult
to check, if the proper template was copied an external template
test.
|
|
5885ba11
|
2013-01-13T12:23:30
|
|
Now checks in the template test whether the description file has
been properly copied.
This is a minimal effort to test whether the template really has
been used when creating an repo with external templates.
|
|
5b524d69
|
2013-01-12T19:37:14
|
|
Fix Travis compilation warnings
|
|
2a3b3e03
|
2013-01-12T19:27:31
|
|
checkout: Teach checkout to cope with orphaned Head
Fix #1236
|
|
25743bd7
|
2013-01-12T13:47:56
|
|
add an index_remove_bypath that removes conflicts, renamed add_from_workdir to match
|
|
0b3aa7be
|
2013-01-12T19:01:45
|
|
tests: plug leaks
|
|
4a4aee11
|
2013-01-12T18:44:50
|
|
Added flag GIT_REPOSITORY_INIT_EXTERNAL_TEMPLATE to test_repo_init__extended_with_template().
Otherwise the template functionallity is not tested (as a TODO we
also shall test that the specified template really got copied).
|
|
e2d2c6e5
|
2013-01-12T02:14:14
|
|
Merge pull request #1222 from scunz/clone_branch
Switch to specified branch during clone
|
|
359316b5
|
2013-01-11T17:16:55
|
|
Merge pull request #1215 from phkelley/binaryunicode
Add a failing test for CRLF filters
|
|
dd6367e3
|
2013-01-11T19:00:19
|
|
Fix up binaryunicode test repo
|
|
f1d4a35e
|
2013-01-12T00:08:48
|
|
Tests: Add test for check out of given branch during clone
|
|
b5b28120
|
2013-01-12T00:07:44
|
|
Test: Cleanup some cleaning code
|
|
160e4fb7
|
2013-01-11T11:35:09
|
|
Merge pull request #1230 from arrbee/match-core-git-diff-binary-detection
Match binary file check of core git in diff
|
|
6e19edaa
|
2013-01-11T11:34:13
|
|
Merge pull request #1229 from arrbee/fix-diff-patch-line-numbers
Fix diff patch line number calculation
|
|
0d65acad
|
2013-01-11T11:24:26
|
|
Match binary file check of core git in diff
Core git just looks for NUL bytes in files when deciding about
is-binary inside diff (although it uses a better algorithm in
checkout, when deciding if CRLF conversion should be done).
Libgit2 was using the better algorithm in both places, but that
is causing some confusion. For now, this makes diff just look
for NUL bytes to decide if a file is binary by content in diff.
|
|
805c476c
|
2013-01-11T11:20:44
|
|
Fix diff patch line number calculation
This was just wrong. Added a test that verifying patch line
numbers even for hunks further into a file and then fixed the
algorithm. I needed to add a little extra state into the patch
so that I could track old and new file numbers independently,
but it should be okay.
|
|
f3738eba
|
2013-01-11T15:39:14
|
|
Fix MSVC Clar compilation warnings
|
|
090d5e1f
|
2013-01-11T14:40:09
|
|
Fix MSVC compilation warnings
|
|
4a0ac175
|
2013-01-10T23:27:13
|
|
checkout: Deploy EMERGECONFLICT usage
|
|
cce2f16b
|
2013-01-10T12:32:20
|
|
Fix indentations
|
|
2086e1ba
|
2013-01-11T16:54:57
|
|
tests: plug a couple of leaks
|
|
40342bd2
|
2013-01-10T15:15:37
|
|
Add GIT_CHECKOUT_DISABLE_PATHSPEC_MATCH
This adds an option to checkout a la the diff option to turn off
fnmatch evaluation for pathspec entries. This can be useful to
make sure your "pattern" in really interpretted as an exact file
match only.
|
|
404880b1
|
2013-01-10T11:24:09
|
|
Merge pull request #1206 from ben/stock-auth
Expose stock user/pass credential utility
|
|
eb3c247a
|
2013-01-10T11:56:02
|
|
REUC needs to handle empty sides
|
|
520dcc1c
|
2013-01-08T19:55:59
|
|
Move credential helpers to their own (optional) header
|
|
ffb02b16
|
2013-01-08T12:58:20
|
|
Expose stock user/pass credential utility
|
|
fcc48d1f
|
2013-01-09T12:37:22
|
|
Add a failing test for autocrlf filters
|
|
abeefbbe
|
2012-12-26T19:16:23
|
|
push: properly handle tags
Currently, push doesn't really handle tags when queueing objects. Fix
it.
|
|
f85b6284
|
2012-12-25T14:50:29
|
|
tests-clar/network: remove unused CREATE_BLOB
|
|
087f64d3
|
2012-12-17T18:48:26
|
|
Relax refspecs accepted by push
|
|
de590550
|
2013-01-08T17:11:11
|
|
Resolve crash with diff against empty file
It is not legal inside our `p_mmap` function to mmap a zero length
file. This adds a test that exercises that case inside diff and
fixes the code path where we would try to do that.
The fix turns out not to be a lot of code since our default file
content is already initialized to "" which works in this case.
Fixes #1210
|
|
f2b7f7a6
|
2013-01-07T15:44:22
|
|
Share git_diff_blobs/git_diff_blob_to_buffer code
This moves the implementation of these two APIs into common code
that will be shared between the two. Also, this adds tests for
the `git_diff_blob_to_buffer` API. Lastly, this adds some extra
`const` to a few places that can use it.
|
|
c31ae146
|
2013-01-06T18:38:29
|
|
merge cleanup should actually cleanup and the test should actually test
|
|
74f880a6
|
2013-01-06T07:56:08
|
|
Merge pull request #1197 from nulltoken/travis/run-online-tests
travis: Include the online suite when running against Travis
|
|
b97fabfa
|
2013-01-06T15:18:00
|
|
tests: Fix some memory leaks
|
|
d74b1bc5
|
2013-01-05T15:44:19
|
|
Merge pull request #1131 from libgit2/correct-ahead-behind
Fix an issue with ahead-behind for lopsided traversal
|
|
2f089539
|
2013-01-04T17:17:37
|
|
Actually fix win32 checkout test
It turns out that using REMOVE_UNTRACKED with checkout for this
particular test was causing the .gitattributes file to be removed
and so we do have to allow for the CRs in the created file...
|
|
bebdbcd4
|
2013-01-04T16:56:21
|
|
Fix crlf issue with checkout tests
Move some checkout utility functions into a shared file and fix
some crlf filtering issues when verifying file contents.
|
|
817d6251
|
2013-01-03T16:56:27
|
|
Fix checkout of index-only dirs and prefixed paths
There are a couple of checkout bugs fixed here. One is with
untracked working directory entries that are prefixes of tree
entries but not in a meaningful way (i.e. "read" is a prefix of
"readme.txt" but doesn't interfere in any way). The second bug
is actually a redo of 07edfa0fc640f85f95507c3101e77accd7d2bf0d
where directory entries in the index that are not in the diff
were not being removed correctly. That fix remedied one case
but broke another.
|
|
7fc00435
|
2013-01-03T15:48:52
|
|
Add index API to remove all files in a directory
This adds the git_index_remove_directory API plus tests.
|
|
d8889d2b
|
2013-01-03T14:08:53
|
|
Fix checkout bug rmv untracked trees from index
When checking out with the GIT_CHECKOUT_REMOVE_UNTRACKED option
and there was an entire tree in the working directory and in the
index that is not in the baseline nor target commit, the tree was
correctly(?) removed from the working directory but was not
successfully removed from the index. This fixes that and adds a
test of the functionality.
|
|
0d70f650
|
2013-01-03T10:51:18
|
|
Fixing checkout UPDATE_ONLY and adding tests
This adds a bunch of new checkout tests and in the process I found
a bug in the GIT_CHECKOUT_UPDATE_ONLY flag which I fixed.
|
|
b3fb9237
|
2013-01-02T17:12:45
|
|
Clone should use GIT_CHECKOUT_SAFE_CREATE
For clone to work as expected, it should be using a SAFE_CREATE
checkout (i.e. create files that are missing, even if the target
tree matches the current HEAD).
|
|
c50c58de
|
2013-01-02T17:10:56
|
|
Extend tests for checkout with typechanges
Test a number of other cases, including intentionally forced
conflicts and deeper inspection that trees get created properly.
There is a still a bug in checkout because the first test here
(i.e. test_checkout_typechange__checkout_typechanges_safe) should
be able to pass with GIT_CHECKOUT_SAFE as a strategy, but it will
not because of some lingering submodule checkout issues.
|
|
a6a82e1a
|
2012-12-19T15:06:40
|
|
Improve error propagation in stash
Stash was sometimes obscuring the actual error code, replacing it
with a -1 when there was more descriptive value. This updates
stash to preserve the original error code more reliably along
with a variety of other error handling tweaks.
I believe this is an improvement, but arguably, preserving the
underlying error code may result in values that are harder to
interpret by the caller who does not understand the internals.
Discussion is welcome!
|
|
8fe713cc
|
2012-12-19T15:06:14
|
|
Make git_oid_tostr use out buffer for NULL oid
Previously a NULL oid was handled like an empty buffer and
returned a status empty string. This makes git_oid_tostr()
set the output buffer to the empty string instead.
|
|
5cf9875a
|
2012-12-18T15:19:24
|
|
Add index updating to checkout
Make checkout update entries in the index for all files that are
updated and/or removed, unless flag GIT_CHECKOUT_DONT_UPDATE_INDEX
is given. To do this, iterators were extended to allow a little
more introspection into the index being iterated over, etc.
|
|
7e5c8a5b
|
2012-12-10T15:31:43
|
|
More checkout improvements
This flips checkout back to be driven off the changes between
the baseline and the target trees. This reinstates the complex
code for tracking the contents of the working directory, but
overall, I think the resulting logic is easier to follow.
|
|
cf208031
|
2012-12-06T13:36:17
|
|
Rework checkout internals (again)
I've tried to map out the detailed behaviors of checkout and make
sure that we're handling the various cases correctly, along with
providing options to allow us to emulate "git checkout" and "git
checkout-index" with the various flags. I've thrown away flags
in the checkout API that seemed like clutter and added some new
ones. Also, I've converted the conflict callback to a general
notification callback so we can emulate "git checkout" output and
display "dirty" files.
As of this commit, the new behavior is not working 100% but some
of that is probably baked into tests that are not testing the
right thing. This is a decent snapshot point, I think, along the
way to getting the update done.
|
|
e9e20c84
|
2012-12-19T14:52:12
|
|
Update cl_git_pass to return more info
This adds a failure reporting function that is called by
cl_git_pass which captures the actual error return code and
the error message if available in the failure report.
|
|
c5df10f4
|
2012-11-30T10:59:03
|
|
Failing test on git_checkout_tree when removing directories
|
|
d0951175
|
2012-12-06T16:12:21
|
|
Add failing test to demonstrate wrong checkout behaviour
|