summaryrefslogtreecommitdiff
path: root/tests
Commit message (Collapse)AuthorAgeFilesLines
* push: use the common refspec parsercmn/push-refspec-refactorCarlos Martín Nieto2014-11-092-13/+10
| | | | | | | | | | | There is one well-known and well-tested parser which we should use, instead of implementing parsing a second time. The common parser is also augmented to copy the LHS into the RHS if the latter is empty. The expressions test had to change a bit, as we now catch a bad RHS of a refspec locally.
* Merge pull request #2688 from libgit2/cmn/ignore-file-trailing-crEdward Thomson2014-11-051-0/+32
|\ | | | | ignore: consider files with a CR in their names
| * ignore: consider files with a CR in their namescmn/ignore-file-trailing-crCarlos Martín Nieto2014-11-051-0/+32
| | | | | | | | | | | | | | | | | | | | We currently consider CR to start the end of the line, but that means that we miss cases with CR CR LF which can be used with git to match files whose names have CR at the end of their names. The fix from the patch comes from Russell's comment in the issue. This fixes #2536.
* | git_remote_rename: propogate GIT_ENOTFOUNDEdward Thomson2014-11-031-0/+9
| |
* | Merge pull request #2679 from jfultz/missing-includeEdward Thomson2014-11-031-0/+16
|\ \ | |/ |/| Make config reading continue after hitting a missing include file.
| * Clean up issues include.path issues found during code review.John Fultz2014-11-021-3/+4
| | | | | | | | | | | | | | | | * Error-handling is cleaned up to only let a file-not-found error through, not other sorts of errors. And when a file-not-found error happens, we clean up the error. * Test now checks that file-not-found introduces no error. And other minor cleanups.
| * Make config reading continue after hitting a missing include file.John Fultz2014-11-011-0/+15
| | | | | | | | | | | | | | | | | | | | | | For example, if you have [include] path = foo and foo didn't exist, git_config_open_ondisk() would just give up on the rest of the file. Now it ignores the unresolved include without error and continues reading the rest of the file.
* | remote: fix tagopt testCarlos Martín Nieto2014-11-021-7/+7
|/ | | | | | | | | | | An anonymous remote wouldn't create remote-tracking branches, so testing we don't create them for TAGS_ALL is nonsensical. Furthermore, the name of the supposed remote-tracking branch was also not one which would have been created had it had a name. Give the remote a name and test that we only create the tags when we pass TAGS_ALL and that we do create the remote-branch branch when given TAGS_AUTO.
* revert tests: always use core.autocrlf=false in testsEdward Thomson2014-10-2713-12/+8
|
* s/git_merge_head/git_annotated_commitEdward Thomson2014-10-2611-383/+386
| | | | | Rename git_merge_head to git_annotated_commit, as it becomes used in more operations than just merge.
* rebase: clean up some warnings and memory leaksEdward Thomson2014-10-261-0/+1
|
* git_rebase: iterators for operationsEdward Thomson2014-10-261-0/+108
|
* rebase: preload all operationsEdward Thomson2014-10-261-12/+12
|
* rebase: init/open a git_rebase objectEdward Thomson2014-10-263-50/+88
|
* git_rebase_next: provide info about the operationEdward Thomson2014-10-261-17/+34
|
* git_rebase_finish: rewrite notes when finishing rebaseEdward Thomson2014-10-261-1/+93
|
* git_rebase_commit: write HEAD's reflog appropriatelyEdward Thomson2014-10-261-1/+9
|
* Introduce git_rebase_finish to complete a rebaseEdward Thomson2014-10-261-0/+57
|
* git_rebase_next: test that we return GIT_ITEROVEREdward Thomson2014-10-261-0/+50
|
* git_rebase_commit: drop already-picked commitsEdward Thomson2014-10-2611-0/+43
| | | | | | Already cherry-picked commits should not be re-included. If all changes included in a commit exist in the upstream, then we should error with GIT_EAPPLIED.
* Introduce git_rebase_commitEdward Thomson2014-10-261-0/+91
| | | | Commit the current patch of a rebase process.
* git_rebase_next: write conflicts nicely during rebaseEdward Thomson2014-10-261-0/+59
|
* Introduce git_rebase_nextEdward Thomson2014-10-261-0/+59
| | | | | | `git_rebase_next` will apply the next patch (or cherry-pick) operation, leaving the results checked out in the index / working directory so that consumers can resolve any conflicts, as appropriate.
* Introduce git_rebase_abortEdward Thomson2014-10-261-0/+148
| | | | | Abort an in-progress rebase and move the working directory and repository back to the ORIG_HEAD state.
* Introduce git_rebase to set up a rebase sessionEdward Thomson2014-10-26125-0/+495
| | | | | | Introduce `git_rebase` to set up a rebase session that can then be continued. Immediately, only merge-type rebase is supported.
* revwalk::mergebase test: free memoryEdward Thomson2014-10-261-0/+1
|
* submodule test: free submoduleEdward Thomson2014-10-261-0/+1
|
* clone::local test: isalpha -> git__isalphaEdward Thomson2014-10-261-1/+1
|
* config test: clean up memory leakEdward Thomson2014-10-261-0/+1
|
* Clean up some memory leaksEdward Thomson2014-10-261-0/+2
|
* tests: fix leakCarlos Martín Nieto2014-10-271-0/+1
|
* Fix test repo dir not deleted after runningLinquize2014-10-271-1/+1
|
* Merge pull request #2638 from libgit2/cmn/config-refresh-removeEdward Thomson2014-10-243-92/+0
|\ | | | | config: remove the refresh function and backend field
| * config: remove the refresh function and backend fieldcmn/config-refresh-removeCarlos Martín Nieto2014-10-233-92/+0
| | | | | | | | | | | | We have been refreshing on read and write for a while now, so git_config_refresh() is at best a no-op, and might just end up wasting cycles.
* | Merge pull request #2646 from libgit2/cmn/remote-renameEdward Thomson2014-10-242-46/+22
|\ \ | | | | | | remote: accept a repo and name for renaming
| * | remote: accept a repo and name for renamingcmn/remote-renameCarlos Martín Nieto2014-10-242-46/+22
| |/ | | | | | | | | | | | | | | | | | | Remote objects are not meant to be changed from under the user. We did this in rename, but only the name and left the refspecs, such that a save would save the wrong refspecs (and a fetch and anything else would use the wrong refspecs). Instead, let's simply take a name and not change any loaded remote from under the user.
* | Merge pull request #2647 from ethomson/clar_tmpnameEdward Thomson2014-10-241-0/+5
|\ \ | | | | | | clar: use a custom temp directory name
| * | clar: use a custom temp directory nameEdward Thomson2014-10-241-0/+5
| |/
* | remote: delete git_remote_supported_url()cmn/remove-supported-urlCarlos Martín Nieto2014-10-241-20/+0
|/ | | | | | | This function does not in fact tell us anything, as almost anything with a colon in it is a valid rsync-style SSH path; it can not tell us that we do not support ftp or afp or similar as those are still valid SSH paths and we do support that.
* Merge pull request #2622 from libgit2/refresh-config-snapshotCarlos Martín Nieto2014-10-231-1/+14
|\ | | | | Refresh git configuration before looking for the tracking branch redux.
| * Change the length of the file so that the change is picked up.Alan Rogers2014-10-231-2/+2
| |
| * Add a test to make sure a new snapshot has the new value.Alan Rogers2014-10-231-1/+14
| |
* | Remote paths: canonicalize UNC paths on Win32Edward Thomson2014-10-221-0/+88
| | | | | | | | | | | | | | Git for Windows will handle UNC paths only when in forward-slash format, eg "//server/path". When given a UNC path as a remote, rewrite standard format ("\\server\path") into this ridiculous format.
* | tree-cache: correct the entry_count calculationCarlos Martín Nieto2014-10-221-5/+5
|/ | | | | | | | | | | | | The entry_count field is the amount of index entries covered by a particular cache entry, that is how many files are there (recursively) under a particular directory. The current code that attemps to do this is severely defincient and is trying to count the amount of children, which always comes up to zero. We don't even need to recount, since we have the information during the cache creation. We can take that number and keep it, as we only ever invalidate or replace.
* Introduce failing test for conflict filtering in indexEdward Thomson2014-10-134-0/+69
|
* Don't use cl_git_pass for POSIX functionsrb/minor-cleanupsRussell Belfer2014-10-101-2/+2
| | | | | | | If there is a failure then cl_git_pass tries to get the libgit2 error, but p_... functions don't set that. Also - trailing whitespace cleanup.
* index: make sure to write cached subtrees if parent is invalidatedCarlos Martín Nieto2014-10-101-0/+53
| | | | | If e.g. the root tree is invalidated, we still want to write out its children, since those may still have valid cache entries.
* index: write out the tree cache extensionCarlos Martín Nieto2014-10-101-6/+79
| | | | | | | | | | Keeping the cache around after read-tree is only one part of the optimisation opportunities. In order to share the cache between program instances, we need to write the TREE extension to the index. Do so, taking the opportunity to rename 'entries' to 'entry_count' to match the name given in the format description. The included test is rather trivial, but works as a sanity check.
* index: add tests for the tree cacheCarlos Martín Nieto2014-10-101-0/+110
| | | | | These test that we invalidate at the right levels and that we remove the tree cache when clearing the index.
* Merge pull request #2593 from libgit2/cmn/remote-delete-nameEdward Thomson2014-10-101-18/+3
|\ | | | | remote: accept a repository and remote name for deletion