summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* push: report the update plan to the callercmn/negotiation-notifyCarlos Martín Nieto2015-04-197-7/+91
| | | | | | | | | It can be useful for the caller to know which update commands will be sent to the server before the packfile is pushed up. git does this via the pre-push hook. We don't have hooks, but as it adds introspection into what is happening, we can add a callback which performs the same function.
* Merge pull request #3016 from pks-t/ignore-exclude-fixEdward Thomson2015-04-172-5/+98
|\ | | | | ignore: fix negative ignores without wildcards.
| * ignore: fix negative ignores without wildcards.Patrick Steinhardt2015-04-172-5/+98
| |
* | Merge pull request #2999 from pks-t/submodule-set-urlEdward Thomson2015-04-173-5/+67
|\ \ | | | | | | Implement git_submodule_set_branch.
| * | Implement git_submodule_set_branch.Patrick Steinhardt2015-04-123-5/+67
| | |
* | | Merge pull request #3047 from git-up/diff_fixesEdward Thomson2015-04-171-10/+7
|\ \ \ | | | | | | | | Diff fixes
| * | | Fixed GIT_DIFF_UPDATE_INDEX not being aware of executable bit changesPierre-Olivier Latour2015-04-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In the prior implementation, enabling GIT_DIFF_UPDATE_INDEX would overwrite entries in the index with the ones generated from scanning the working if the OID was the same. Because this OID comparison ignores file modes, this means an file in the workdir with only an exec bit difference with the one in the index would end up being overwritten, resulting in the exec bit being loss. There might be other related bugs but the fix of comparing OIDs and file modes should address them all.
| * | | Removed unnecessary conditionPierre-Olivier Latour2015-04-151-9/+6
| | | | | | | | | | | | | | | | The variable noid is guaranteed to be zero at this point of the code path.
| * | | Use git_oid_cpy() instead of memcpy()Pierre-Olivier Latour2015-04-151-1/+1
| | | |
* | | | Merge pull request #3052 from ↵Edward Thomson2015-04-171-1/+1
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | jeffhostetler/jeffhostetler/memleak_test_core_mkdir Fix memleak in test/core/mkdir reported by CRTDBG
| * | | | Fix memleak in test/core/mkdir reported by CRTDBGJeff Hostetler2015-04-171-1/+1
|/ / / /
* | | | Merge pull request #3042 from libgit2/cmn/odd-slowdownEdward Thomson2015-04-161-2/+22
|\ \ \ \ | | | | | | | | | | revwalk: detect when we're out of interesting commits
| * | | | revwalk: detect when we're out of interesting commitscmn/odd-slowdownCarlos Martín Nieto2015-04-141-2/+22
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | | | Merge pull request #3037 from libgit2/cmn/hide-then-pushEdward Thomson2015-04-163-8/+31
|\ \ \ \ | | | | | | | | | | Handle hide-then-push in the revwalk
| * | | | revwalk: reword the push textcmn/hide-then-pushCarlos Martín Nieto2015-04-131-8/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As it seems it's not quite clear what it means to push a commit, try to be more explicit about adding a new root and that we may not see this commit if it is hidden.
| * | | | revwalk: don't insert uninteresting commits into the queueCarlos Martín Nieto2015-04-081-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| * | | | revwalk: add failing test for hiding and then pushing a commitCarlos Martín Nieto2015-04-081-0/+17
| | | | | | | | | | | | | | | | | | | | | | | | | When we hide a commit which we later push into the revwalk, we do not handle this well and return commits which we should not.
* | | | | Merge pull request #3039 from jeffhostetler/jeffhostetler/msvc_crtdbgEdward Thomson2015-04-164-2/+147
|\ \ \ \ \ | |_|/ / / |/| | | | Add memory leak detection/reporting using MSVC CRTDBG facility.
| * | | | Add MSVC CRTDBG memory leak reporting.Jeff Hostetler2015-04-154-2/+147
| |/ / /
* | | | Merge pull request #2974 from libgit2/cmn/clone-everythingEdward Thomson2015-04-105-3/+97
|\ \ \ \ | | | | | | | | | | Make sure to pack referenced objects for non-branches
| * | | | local: recusrively insert non-branch objects into the packfilecmn/clone-everythingCarlos Martín Nieto2015-03-171-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When we insert e.g. a tag or tagged object into the packfile, we must make sure to insert any referenced objects as well, or we will have broken links. Use the recursive version of packfile insertion to make sure we send over not just the tagged object but also the objects it references.
| * | | | tree: add more correct error messages for not foundCarlos Martín Nieto2015-03-171-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | Don't use the full path, as that's not what we are asserting does not exist, but just the subpath we were looking up.
| * | | | packbuilder: introduce git_packbuilder_insert_recur()Carlos Martín Nieto2015-03-172-0/+48
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This function recursively inserts the given object and any referenced ones. It can be thought of as a more general version of the functions to insert a commit or tree.
| * | | | clone: add failing test for local transport with a tagCarlos Martín Nieto2015-03-171-0/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When there is a tag, we must make sure that we get all referenced objects from this tag as well. This failing test shows that e.g. when there is a tagged tree, we insert the top tree but do not descend, thus causing the clone to have broken links.
* | | | | Merge pull request #3030 from linquize/symlink_supportedEdward Thomson2015-04-102-3/+52
|\ \ \ \ \ | | | | | | | | | | | | If work_dir is not specified, use repo_dir to test if symlink is supported
| * | | | | Test: Create repo in while current dir is readonly and checkout symlinkLinquize2015-04-041-0/+47
| | | | | |
| * | | | | For bare repository, use repo_dir to test if symlinks are supportedLinquize2015-04-041-3/+5
| | |_|/ / | |/| | |
* | | | | Merge branch 'pr/3035'Edward Thomson2015-04-101-4/+4
|\ \ \ \ \
| * | | | | ISO C90 forbids mixed declarations and codeJozef Matula2015-04-081-4/+4
| | |_|/ / | |/| | | | | | | | | | | | | | | | | | GIT_UNUSED() macro generates code therefore it should be used after variable declarations.
* | | | | Merge pull request #3038 from pks-t/fix-regcomp-retval-checkEdward Thomson2015-04-104-6/+18
|\ \ \ \ \ | | | | | | | | | | | | Fix checking of return value for regcomp.
| * | | | | Fix checking of return value for regcomp.Patrick Steinhardt2015-04-104-6/+18
|/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | | | | Merge pull request #3033 from pks-t/describe-oid-fallbackEdward Thomson2015-04-084-2/+9
|\ \ \ \ \ | |/ / / / |/| | | | Fix describe without refs and OID fallbacks
| * | | | describe: only abort without tags if fallback is not allowed.Patrick Steinhardt2015-04-072-2/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When no reference names could be found we did error out when trying to describe a commit. This is wrong, though, when the option to fall back to a commit's object ID is set.
| * | | | describe example: enable building by default.Patrick Steinhardt2015-04-072-0/+2
|/ / / /
* | | | Merge pull request #3031 from git-up/git_index_addEdward Thomson2015-04-042-2/+2
|\ \ \ \ | | | | | | | | | | Entry argument passed to git_index_add_frombuffer() should be const
| * | | | Entry argument passed to git_index_add_frombuffer() should be constPierre-Olivier Latour2015-04-032-2/+2
| | | | |
* | | | | Merge pull request #3022 from ethomson/gitignore_vimEdward Thomson2015-04-011-0/+1
|\ \ \ \ \ | |/ / / / |/| | | | gitignore: ignore vim swapfiles
| * | | | gitignore: ignore vim swapfilesEdward Thomson2015-03-301-0/+1
|/ / / /
* | | | Merge pull request #3011 from ethomson/filter_zero_tempbufEdward Thomson2015-03-2511-0/+25
|\ \ \ \ | | | | | | | | | | Clear temporary buffer when filtering
| * | | | filter: clear the temp_buf if we're using oneEdward Thomson2015-03-251-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | If we are using a temporary buffer for filtering, be sure to clear it before using it, in case the file that we are filtering is empty.
| * | | | Illustrate bad checkout on WindowsJacques Germishuys2015-03-2510-0/+22
| | | | |
* | | | | Merge pull request #3017 from ethomson/leaksCarlos Martín Nieto2015-03-253-5/+7
|\ \ \ \ \ | | | | | | | | | | | | squash some leaks
| * | | | | squash some leaksEdward Thomson2015-03-243-5/+7
|/ / / / /
* | | | | Merge pull request #2990 from leoyanggit/custom_paramEdward Thomson2015-03-247-12/+30
|\ \ \ \ \ | | | | | | | | | | | | Add a custom param to git_smart_subtransport_definition
| * | | | | Add a custom param to git_smart_subtransport_definitionLeo Yang2015-03-187-12/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The smart transport has already take the payload param. For the sub transport a payload param is useful for the implementer.
* | | | | | Merge pull request #2986 from tkelman/mingw_winhttpEdward Thomson2015-03-249-33/+792
|\ \ \ \ \ \ | | | | | | | | | | | | | | WinHTTP for MinGW
| * | | | | | Use swprintf_s everywhere except mingw.orgTony Kelman2015-03-192-5/+8
| | | | | | |
| * | | | | | set PKG_CONFIG_LIBDIR in toolchain-mingw32.cmakeTony Kelman2015-03-171-0/+2
| | | | | | |
| * | | | | | use a different .def file for 64 bitTony Kelman2015-03-162-2/+37
| | | | | | |
| * | | | | | Fix out-of-tree buildTony Kelman2015-03-161-4/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | link against crypt32 for CertFreeCertificateContext