summaryrefslogtreecommitdiff
path: root/tests
Commit message (Collapse)AuthorAgeFilesLines
...
* | checkout: remove blocking dir when FORCEdEdward Thomson2015-05-041-7/+91
| |
* | Revert "Always checkout with case sensitive iterator"Edward Thomson2015-05-041-2/+13
| | | | | | | | This reverts commit 40d791545abfb3cb71553a27dc64129e1a9bec28.
* | checkout test: ensure we write to casechanged dirEdward Thomson2015-05-041-0/+57
| | | | | | | | | | | | Ensure that on a case insensitive filesystem that we can checkout into some folder 'FOLDER' that exists on disk, even if the target of the checkout is a different case (eg 'folder').
* | checkout test: ignore unstaged case-changing renamesEdward Thomson2015-05-041-0/+22
|/ | | | | | | | On Windows, you might sloppily rewrite a file (or have a sloppy text editor that does it for you) and accidentally change its case. (eg, "README" -> "readme"). Git ignores this accidental case changing rename during checkout and will happily write the new content to the file despite the name change. We should, too.
* Merge pull request #3087 from ethomson/pr/3054Carlos Martín Nieto2015-05-043-13/+54
|\ | | | | Performance Improvements to Status on Windows
| * git_path_diriter: next shouldn't take path ptrEdward Thomson2015-05-011-9/+50
| | | | | | | | | | | | | | | | The _next method shouldn't take a path pointer (and a path_len pointer) as 100% of current users use the full path and ignore the filename. Plus let's add some docs and a unit test.
| * git_path_dirload: use git_path_diriterEdward Thomson2015-05-011-1/+1
| |
| * Improvements to ignore performance on Windows.J Wyman2015-04-281-3/+3
| | | | | | | | Minimizing the number directory and file opens, minimizes the amount of IO thus reducing the overall cost of performing ignore operations.
* | Merge pull request #3059 from libgit2/cmn/negotiation-notifyEdward Thomson2015-05-011-1/+1
|\ \ | | | | | | [WIP/RFC] push: report the update plan to the caller
| * | push: report the update plan to the callercmn/negotiation-notifyCarlos Martín Nieto2015-04-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | | Fixed unused warning in tests/rebase/merge.cTomas Paladin Volf2015-04-301-0/+5
| |/ |/|
* | Merge pull request #3063 from ethomson/config_validate_nameCarlos Martín Nieto2015-04-242-0/+70
|\ \ | | | | | | Validate configuration keys
| * | config: ensure we can write to an empty fileEdward Thomson2015-04-231-0/+35
| | |
| * | config: test that we validate the keyEdward Thomson2015-04-231-0/+35
| | |
* | | Rename GIT_SSL to GIT_OPENSSLCarlos Martín Nieto2015-04-231-1/+1
| | | | | | | | | | | | | | | This is what it's meant all along, but now we actually have multiple implementations, it's clearer to use the name of the library.
* | | Add a SecureTransport TLS channelCarlos Martín Nieto2015-04-231-1/+1
|/ / | | | | | | | | As an alternative to OpenSSL when we're on OS X. This one can actually take advantage of stacking the streams.
* | Merge pull request #3064 from rcorre/config-write-fixCarlos Martín Nieto2015-04-231-0/+38
|\ \ | | | | | | config_write -- handle duplicate section headers when deleting entries
| * | Specify mock config file content in test.Ryan Roden-Corrent2015-04-212-10/+11
| | | | | | | | | | | | | | | Instead of using a config file in resources, include the config file content to be tested directly in the test.
| * | Unittest to validate config entry deletion bug.Ryan Roden-Corrent2015-04-212-0/+37
| | | | | | | | | | | | | | | | | | Add a unittest to validate bug #3043, where a duplicate empty config header could cause deletion of a config entry to fail silently. The bug is currently unresolved and this test will fail.
* | | Merge branch 'attr-ignore'Carlos Martín Nieto2015-04-231-0/+18
|\ \ \
| * | | Add failing subdirectory gitignore attr test.Mike McQuaid2015-04-231-0/+18
| | | |
* | | | Merge pull request #3032 from jfultz/index-file-modesEdward Thomson2015-04-232-2/+106
|\ \ \ \ | | | | | | | | | | Fix git_checkout_tree() to do index filemodes correctly on Windows.
| * | | | Fix index-adding functions to know when to trust filemodes.John Fultz2015-04-211-0/+79
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The idea...sometimes, a filemode is user-specified via an explicit git_index_entry. In this case, believe the user, always. Sometimes, it is instead built up by statting the file system. In those cases, go with the existing logic we have to determine whether the file system supports all filemodes and symlinks, and make the best guess. On file systems which have full filemode and symlink support, this commit should make no difference. On others (most notably Windows), this will fix problems things like: * git_index_add and git_index_add_frombuffer() should be believed. * As a consequence, git_checkout_tree should make the filemodes in the index match the ones in the tree. * And diffs with GIT_DIFF_UPDATE_INDEX don't write the wrong filemodes. * And merges, and probably other downstream stuff now fixed, too. This makes my previous changes to checkout.c unnecessary, so they are now reverted. Also, added a test for index_entry permissions from git_index_add and git_index_add_frombuffer, both of which failed before these changes.
| * | | | Fix git_checkout_tree() to do index filemodes correctly on Windows.John Fultz2015-04-061-2/+27
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | | | Fix for Issue #3023 tests fail with no networkcthomas2015-04-212-51/+52
| |/ / |/| | | | | | | | | | | | | | | | | Moved offending tests from network to online so they will get skipped when there is a lack of network connectivity: -test_online_remotes__single_branch -test_online_remotes__restricted_refspecs
* | | Merge pull request #2992 from ethomson/rebase_fixesCarlos Martín Nieto2015-04-213-56/+116
|\ \ \ | | | | | | | | Rebase fixes
| * | | rebase: include checkout opts within rebase optsEdward Thomson2015-04-201-1/+2
| | | |
| * | | rebase: test checkout options for rebaseEdward Thomson2015-04-201-0/+49
| | | |
| * | | rebase: init and open take a rebase_optionsEdward Thomson2015-04-204-76/+49
| | | | | | | | | | | | | | | | | | | | | | | | `git_rebase_init` and `git_rebase_open` should take a `git_rebase_options` and use it for future rebase operations on that `rebase` object.
| * | | rebase: take `checkout_options` where appropriateEdward Thomson2015-04-204-22/+22
| | | |
| * | | rebase: block rebase_commit with unstaged changesEdward Thomson2015-04-201-0/+35
| | | |
| * | | rebase: commit should return GIT_EUNMERGEDEdward Thomson2015-04-201-1/+3
| | | | | | | | | | | | | | | | | | | | git_rebase_commit should return `GIT_EUNMERGED` when unmerged items exist in the index, per the documentation. Test that this is correct.
| * | | rebase: identify a rebase that has not startedEdward Thomson2015-04-201-1/+1
| | |/ | |/| | | | | | | | | | | | | In `git_rebase_operation_current()`, indicate when a rebase has not started (with `GIT_REBASE_NO_OPERATION`) rather than conflating that with the first operation being in-progress.
* | | config_file: comment char can be invalid escapeEdward Thomson2015-04-201-0/+11
| | | | | | | | | | | | | | | | | | Don't assume that comment chars are comment chars, they may be (an attempt to be escaped). If so, \; is not a valid escape sequence, complain.
* | | config_file: parse multilines generouslyEdward Thomson2015-04-201-6/+34
|/ / | | | | | | | | Combine unquoting and multiline detection to avoid ambiguity when parsing.
* | Merge pull request #3016 from pks-t/ignore-exclude-fixEdward Thomson2015-04-171-0/+53
|\ \ | | | | | | ignore: fix negative ignores without wildcards.
| * | ignore: fix negative ignores without wildcards.Patrick Steinhardt2015-04-171-0/+53
| | |
* | | Merge pull request #2999 from pks-t/submodule-set-urlEdward Thomson2015-04-171-3/+25
|\ \ \ | | | | | | | | Implement git_submodule_set_branch.
| * | | Implement git_submodule_set_branch.Patrick Steinhardt2015-04-121-3/+25
| | | |
* | | | Fix memleak in test/core/mkdir reported by CRTDBGJeff Hostetler2015-04-171-1/+1
| | | |
* | | | Merge pull request #3037 from libgit2/cmn/hide-then-pushEdward Thomson2015-04-161-0/+17
|\ \ \ \ | | | | | | | | | | Handle hide-then-push in the revwalk
| * | | | 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-161-0/+19
|\ \ \ \ | | | | | | | | | | Add memory leak detection/reporting using MSVC CRTDBG facility.
| * | | | Add MSVC CRTDBG memory leak reporting.Jeff Hostetler2015-04-151-0/+19
| |/ / /
* | | | Merge pull request #2974 from libgit2/cmn/clone-everythingEdward Thomson2015-04-101-0/+45
|\ \ \ \ | | | | | | | | | | Make sure to pack referenced objects for non-branches
| * | | | 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-101-0/+47
|\ \ \ \ \ | | | | | | | | | | | | 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
| | |_|/ / | |/| | |
* | | | | Fix checking of return value for regcomp.Patrick Steinhardt2015-04-101-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | | | | describe: only abort without tags if fallback is not allowed.Patrick Steinhardt2015-04-071-1/+6
| |_|/ / |/| | | | | | | | | | | | | | | | | | | 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.