Log

Author Commit Date CI Message
Mike McQuaid b67bc364 2015-04-17T18:27:28 attr_file: fix subdirectory attr case. Closes #2966.
Patrick Steinhardt 657ddf97 2015-03-24T16:33:50 ignore: fix negative ignores without wildcards.
Carlos Martín Nieto 702ac408 2015-04-08T23:51:49 revwalk: don't insert uninteresting commits into the queue When a commit is first set as unintersting and then pushed, we must take care that we do not put it into the commit list as that makes us return at least that commit (but maybe more) as we've inserted it into the list because we have the assumption that we want anything in the commit list.
Carlos Martín Nieto 98e484b9 2015-04-14T03:26:45 revwalk: detect when we're out of interesting commits When walking backwards and marking parents uninteresting, make sure we detect when the list of commits we have left has run out of uninteresting commits so we can stop marking commits as uninteresting. Failing to do so can mean that we walk the whole history marking everything uninteresting, which eats up time, CPU and IO for with useless work. While pre-marking does look for this, we still need to check during the main traversal as there are setups for which pre-marking does not leave enough information in the commits. This can happen if we push a commit and hide its parent.
Patrick Steinhardt 7661fa12 2015-04-10T09:36:38 Fix checking of return value for regcomp. The regcomp function returns a non-zero value if compilation of a regular expression fails. In most places we only check for negative values, but positive values indicate an error, as well. Fix this tree-wide, fixing a segmentation fault when calling git_config_iterator_glob_new with an invalid regexp.
John Fultz 04162eb1 2015-03-10T12:02:45 Fix git_checkout_tree() to do index filemodes correctly on Windows. git_checkout_tree() has some fallback behaviors for file systems which don't have full support of filemodes. Generally works fine, but if a given file had a change of type from a 0644 to 0755 (i.e., you add executable permissions), the fallback behavior incorrectly triggers when writing hte updated index. This would cause a git_checkout_tree() command, even with the GIT_CHECKOUT_FORCE option set, to leave a dirty index on Windows. Also added checks to an existing test to catch this case. Conflicts: src/checkout.c
Pierre-Olivier Latour 7dc1b1c4 2015-03-30T14:06:21 Make sure to also update delta->nfiles when merging diffs When diffs are generated, the value for the 'nfiles' field of 'git_diff_delta' will be consistent with the value in the 'status' field. Merging diffs can modify the 'status' field of some deltas and the 'nfiles' field needs to be updated accordingly.
Carlos Martín Nieto fb6df50b 2015-03-24T17:10:45 Bump version to 0.22.2
Carlos Martín Nieto 928b4cad 2015-03-24T16:47:26 Merge pull request #3005 from libgit2/cmn/maint-update Backports for the maint branch
Carlos Martín Nieto 79010d09 2015-03-24T15:56:51 Merge pull request #3015 from ethomson/maint/v0.22 Additional backports
Edward Thomson 1f25fe95 2015-03-23T11:30:30 checkout: report correct invalid path
Edward Thomson 8633dd90 2015-02-03T20:01:24 win32: further cleanups for 8.3 disabling
Edward Thomson 93be89c3 2015-02-03T12:16:11 win32: cleanup 8.3 disabled tests
Linquize 728a013b 2015-01-28T23:04:50 Fix test failures when 8.3 is disabled
Carlos Martín Nieto 1f726d05 2015-03-21T21:48:03 git: make sure to close the network stream In case of a bad url or other error during the connection setup, we close the stream via free.
Edward Thomson 3e163b67 2015-01-23T00:18:42 checkout: free last created directory
Sebastian Bauer 3440c202 2015-03-17T21:38:58 Initialize refs vector in git_remote_update_tips(). Otherwise, bailing out early when ls_to_vector() fails accesses uninitialized memory.
Claudiu Olteanu dcf6c0c4 2015-03-16T23:08:16 Lower case the include directive of windows header Since the Linux platform has a case sensitive file system, the header name should be lower case for cross compiling purposes. (On Linux, the mingw header is called ```windows.h```).
Carlos Martín Nieto 1dd5e28e 2015-03-16T19:41:50 http: do not try to use the cert callback on unencrypted streams When the user has a certificate check callback set, we still have to check whether the stream we're using is even capable of providing a certificate. In the case of an unencrypted certificate, do not ask for it from the stream, and do not call the callback.
Carlos Martín Nieto dd243fe1 2015-03-13T18:00:15 indexer: set an error message on duplicate objects in pack While this is not even close to a fix, we can at least set an error message so we know which error we are facing. Up to know we just returned an error without a message.
Carlos Martín Nieto 3a1dc420 2015-03-13T17:52:07 Put back the number of expected references to 6 from the test repo This was but down to 5 when GitHub made a change to their server which made them stop honouring the include-tag request. This has recently been corrected, so we can bring it back up to six.
Pierre-Olivier Latour cf688ffd 2015-03-05T23:06:31 Fixed active refspecs not reset by git_remote_upload()
Carlos Martín Nieto 7a5682f5 2015-03-03T17:23:01 http: enforce the credential types The user may decide to return any type of credential, including ones we did not say we support. Add a check to make sure the user returned an object of the right type and error out if not.
Carlos Martín Nieto f008aeb8 2015-03-03T13:25:40 branch: do capture the error code We want to ignore GIT_ENOTFOUND, but for that we need to capture the error code from the reflog deletion.
Pierre-Olivier Latour 283f31ab 2015-03-02T10:24:54 git_branch_delete() should ignore errors from non-existing reflogs
Leo Yang aa409d53 2015-02-13T17:28:35 Fix Mac build without OpenSSL If OpenSSL is disabled on Mac the SHA1 implementation goes to the CommonCrypto from the system. In this case we should not include the generic hash impl. Otherwise there would be duplicated impls which fail the build.
Jason Haslam d884d1c4 2015-02-14T23:43:26 Fix race in git_packfile_unpack. Increment refcount of newly added cache entries just like existing entries looked up from the cache. Otherwise the new entry can be evicted from the cache and destroyed while it's still in use.
Edward Thomson 7aee2489 2015-02-05T11:06:01 repo: ensure we can create repo at filesystem root Test to ensure that we can create a repository at the filesystem root. Introduces a new test environment variable, `GITTEST_INVASIVE_FILESYSTEM` for tests that do terrible things like escaping the clar sandbox and writing to the root directory. It is expected that the CI builds will enable this but that normal people would not want this.
Jeff Hostetler aa926fb5 2015-02-02T16:50:10 Fix branch creation when branch name matches namespace of previously deleted branch
Pierre-Olivier Latour 31ea8db5 2015-01-27T08:17:23 Clarified git_repository_is_empty() documentation
Raphael Kubo da Costa ed64a1b2 2015-01-24T16:15:12 Add libssh2's library and include directories. Follow-up to 4f91bfa ("Find libssh2 via pkg-config"): FindPkgConfig sets <foo>_INCLUDE_DIRS, not <foo>_INCLUDE_DIR like FindLIBSSH2 did. Additionally, if using only FindPkgConfig to find libssh2, we have to call LINK_DIRECTORIES() as well to pass the appropriate -L entries, otherwise the build will only work if libssh2.so is in a directory searched automatically by the linker.
Yury G. Kudryashov 277d6477 2015-02-05T23:39:59 Reinit `reader` pointer after reading included config file Fixes #2869. If included file includes more files, it may reallocate cfg_file->readers, hence invalidate not only `r` pointer, but `result` pointer as well.
Jameson Miller 3bdcea88 2015-02-12T15:32:52 Check rebase options version on public entry points
Edward Thomson 7d8e4e30 2015-02-04T23:45:22 mkdir: respect the root path Don't try to strip trailing paths from the root directory on Windows (trying to create `C:` will fail).
Edward Thomson 69455bc8 2015-02-04T18:24:31 stat: don't remove trailing '/' from root on win32 `p_stat` calls `git_win32_path_from_utf8`, which canonicalizes the path. Do not further try to modify the path, else we trim the trailing slash from a root directory and try to access `C:` instead of `C:/`.
Jacques Germishuys 5c3e01d8 2015-01-25T14:40:23 Ensure the diff hunk callback is specified before trying to dereference it
Jacques Germishuys fe61bb68 2015-01-25T14:08:05 Ensure git_index_entry is not NULL before trying to free it
Raphael Kubo da Costa ae0cfacc 2015-01-24T16:19:43 openssl: Add all required includes for AF_INET6 and in6_addr. This fixes the build at least on FreeBSD, where those types were not defined indirectly: src/openssl_stream.c:100:18: error: variable has incomplete type 'struct in6_addr' struct in6_addr addr6; ^ src/openssl_stream.c:100:9: note: forward declaration of 'struct in6_addr' struct in6_addr addr6; ^ src/openssl_stream.c:111:18: error: use of undeclared identifier 'AF_INET' if (p_inet_pton(AF_INET, host, &addr4)) { ^ src/unix/posix.h:31:40: note: expanded from macro 'p_inet_pton' ^ src/openssl_stream.c:115:18: error: use of undeclared identifier 'AF_INET6' if(p_inet_pton(AF_INET6, host, &addr6)) { ^ src/unix/posix.h:31:40: note: expanded from macro 'p_inet_pton' ^
Pierre-Olivier Latour 4738a337 2015-01-23T20:57:13 Fixed git_repository_set_bare() not setting "core.bare" correctly
Pierre-Olivier Latour d0db4085 2015-01-23T16:04:23 Make sure sys/repository.h includes the required headers It was missing "common.h" and "types.h" like other system headers. This generated compilation errors if including it directly.
Pierre-Olivier Latour eefe2e8b 2015-01-23T15:59:54 Fixed typo in git_repository_reinit_filesystem() documentation
Sven Strickroth 8693335b 2014-11-13T19:30:47 Make binary detection work similar to vanilla git Main change: Don't treat chars > 128 as non-printable (common in UTF-8 files) Signed-off-by: Sven Strickroth <email@cs-ware.de>
Edward Thomson 53fc54d5 2015-03-17T22:37:19 Merge pull request #2930 from akikoskinen/maint/v0.22 Fix build on mingw
Aki Koskinen d95c949a 2015-02-27T10:53:39 Include ws2tcpip.h in order to get in6_addr It's currently required in src/openssl_stream.c only.
Aki Koskinen e1314dd6 2015-02-27T10:49:02 Include openssl headers last Windows headers #define some names that openssl uses too. Openssl headers #undef the offending names before reusing them. But if those offending Windows headers get included after the openssl headers the namespace is polluted and nothing good happens. Fixes issue #2850.
John Haley 09c24770 2015-02-11T10:31:54 Fixed error when including git2/include/sys/stream.h
Boris Egorov bd0a5516 2015-01-25T00:07:23 pathspec: do not try to dereference NULL pathspec_match_free() should not dereference a NULL passed to it. I found this issue when I tried to run example log program with nonexistent branch: ./example/log help Such call leads to segmentation fault.
Edward Thomson 1ce9ea3b 2015-01-15T17:17:01 checkout tests: cleanup realpath impl on Win32
Edward Thomson f9df7b62 2015-01-14T20:16:01 checkout tests: emulate p_realpath poorly on Win32
Edward Thomson 8d655239 2015-01-16T18:37:06 checkout: remove files before writing new ones On case insensitive filesystems, we may have files in the working directory that case fold to a name we want to write. Remove those files (by default) so that we will not end up with a filename that has the unexpected case.
Edward Thomson b295294f 2015-01-14T13:20:21 checkout: drop newline in error message
Edward Thomson 99367df1 2015-01-14T13:15:34 checkout tests: nasty symlinks Symbolic links that abuse case insensitivity to write into .git.
Edward Thomson 9f1c873e 2015-01-16T18:35:13 checkout: don't recreate previous directory Don't bother trying to recreate the previously created directory during checkout, for a modest reduction in the number of stats.
Edward Thomson 1ca7fa94 2015-01-16T18:33:23 git_path_join_unrooted: return base len The documentation for `git_path_join_unrooted` states that the base length will be returned, so that consumers like checkout know where to start creating directories instead of always creating directories at the directory root.
Edward Thomson bd0e8814 2015-01-16T18:32:48 checkout: introduce git_checkout_perfdata Checkout can now provide performance data about the number of (some) syscalls performed using an optional callback. This structure remains internal-only in maintenance branches.
Carlos Martín Nieto 04bdd97f 2015-01-12T08:59:46 Merge pull request #2815 from ethomson/example clone example: don't divide by zero
Edward Thomson 9af3c416 2015-01-10T18:05:01 clone example: don't divide by zero Local transports don't have data about the size, avoid dividing by zero in the callback.
Carlos Martín Nieto b91f28be 2015-01-10T00:49:20 Reformat the changelog This should provide a easier way to see what kinds of changes we have, and a single place to look at the breaking changes.
Carlos Martín Nieto d4b24101 2015-01-09T16:47:48 Merge commit '4b1018d24f980273528743c27c47ceb96cb720bd' Fix crash in free() when git_buf_grow() fails.
Jeff Hostetler 4b1018d2 2015-01-08T17:24:12 Fix crash in free() when git_buf_grow() fails.
Carlos Martín Nieto fe8399fe 2015-01-09T16:29:08 Fix warning
Carlos Martín Nieto 788c5f1c 2015-01-09T10:23:08 Merge pull request #2810 from ethomson/remove_symlinks Remove symlinks from the repository
Edward Thomson aebdbcd9 2015-01-08T17:27:58 Merge pull request #2811 from ethomson/remote_leak remote: plug leak
Edward Thomson 365d3672 2015-01-08T21:32:44 submodule::init tests: free some leaks
Edward Thomson a8846da7 2015-01-08T13:45:22 remote: plug leak
Edward Thomson 3b40ed89 2015-01-08T19:23:37 repo::init test: create hook symlink Remove the hook symlink from the test resources, so that we can have a source tree that is easy to zip up and copy around on systems that don't support symlinks. Create it dynamically at test execution instead.
Edward Thomson 1646412d 2015-01-08T11:20:44 Merge pull request #2802 from calavera/remote_create_prune_config Load prune configuration when a remote is created.
David Calavera de4a75f9 2015-01-07T09:26:36 Fix more indentation.
David Calavera c868981f 2015-01-06T13:49:39 Add extern function to initialize submodule update options.
Carlos Martín Nieto 6a6c24e0 2015-01-07T11:54:08 Merge pull request #2806 from ethomson/changelog CHANGELOG: we've added git_describe
Edward Thomson 2ce37794 2015-01-06T18:34:55 Merge pull request #2805 from ethomson/msvc submodule: declare vars at top of func block
Edward Thomson 9b22f8b4 2015-01-06T18:34:43 Merge pull request #2803 from ethomson/appveyor Add appveyor yaml
Edward Thomson 61cd037e 2015-01-06T17:18:57 CHANGELOG: we've added git_describe
Edward Thomson 388ca7e7 2015-01-06T15:16:25 Add appveyor yaml
Edward Thomson 5018e2c6 2015-01-06T17:08:38 submodule: declare vars at top of func block
Carlos Martín Nieto 007f3ff6 2015-01-05T21:34:26 Merge pull request #2801 from ethomson/changelog CHANGELOG: add missing 0.22 changes
David Calavera 66b71ea5 2015-01-05T13:33:36 Fix intentation.
Edward Thomson 974d21c8 2015-01-05T15:10:38 CHANGELOG: add missing 0.22 changes
Carlos Martín Nieto 239bdc57 2015-01-05T21:28:30 Merge pull request #2799 from ethomson/merge_doc Better document `git_merge_commits`
David Calavera 1ef3f0ce 2015-01-05T13:24:11 Load prune configuration when a remote is created.
Carlos Martín Nieto c8b64f70 2015-01-05T20:20:08 Fix the version in CHANGELOG to 0.22 The release after 0.21 is 0.22. Add a new heading for the changes since 0.22.
Carlos Martín Nieto 9b2efc15 2015-01-05T20:16:48 Bump version to 0.22 Bump the version number to 0.22.0 and the SOVERSION to 22.
Carlos Martín Nieto 0c601229 2015-01-05T20:10:43 Merge commit 'refs/pull/2632/head' of github.com:libgit2/libgit2
Edward Thomson 5e44d9bc 2015-01-05T11:34:17 Better document `git_merge_commits` `git_merge_commits` (and thus `git_merge`) do not use the same strategy as `git-merge-recursive` wherein they can produce an artificial common ancestor that is the merge of all common ancestors. Document this accordingly.
Carlos Martín Nieto c4a2fd5c 2015-01-04T17:39:43 Plug a couple of leaks
Carlos Martín Nieto 55d9c29a 2015-01-04T16:44:33 Merge pull request #2792 from swisspol/fix_remote_download Fixed internal push state not being cleared when calling git_remote_download()
Carlos Martín Nieto e48d0266 2015-01-04T12:33:18 Merge pull request #2794 from calavera/include_right_common Include git2/common.h in sys/openssl.h.
David Calavera d76e9df9 2015-01-02T15:56:03 Include git2/common.h in sys/openssl.h.
Pierre-Olivier Latour c070ac64 2015-01-01T04:14:58 Fixed internal push state not being cleared on download git_remote_download() must also clear the internal push state resulting from a possible earlier push operation. Otherwise calling git_remote_update_tips() will execute the push version instead of the fetch version and among other things, tags won't be updated.
Edward Thomson 56065c09 2014-12-31T09:27:44 Merge pull request #2788 from swisspol/fix_docs Fixed git_revert() documentation
Pierre-Olivier Latour f8263472 2014-12-30T15:54:30 Fixed git_revert() documentation
Edward Thomson a3ef70bb 2014-12-30T11:53:55 Merge pull request #2761 from libgit2/cmn/fetch-prune Remote-tracking branch prunning
Edward Thomson c4c47fc2 2014-12-30T11:53:45 Merge pull request #2762 from libgit2/cmn/hide-push remote: remove git_push from the public API
Carlos Martín Nieto 8aba3d47 2014-12-30T17:06:04 Update CHANGELOG for pruning
Carlos Martín Nieto fe794b2e 2014-12-16T08:57:05 remote: remove git_push from the public API Instead we provide git_remote_upload() and git_remote_update_tips() in order to have a parallel API for fetching and pushing.
Carlos Martín Nieto 13da562a 2014-12-30T16:48:52 Merge pull request #2785 from jacquesg/coverity Coverity fixes
Jacques Germishuys dfda1cf5 2014-12-27T21:04:28 Check for OOM
Jacques Germishuys 0beb7fe4 2014-12-24T11:44:17 Added missing error handling path
Jacques Germishuys 3dbd9a0e 2014-12-24T11:43:38 Check the result of git_buf_joinpath
Edward Thomson 4ceb388b 2014-12-29T14:22:36 Merge pull request #2784 from jacquesg/undef-stat Undef stat for Mingw