summaryrefslogtreecommitdiff
path: root/include
Commit message (Collapse)AuthorAgeFilesLines
* Fix attribute lookup in index for bare reposrb/attr-with-bareRussell Belfer2014-09-151-0/+13
| | | | | | | | | | | | | | | | When using a bare repo with an index, libgit2 attempts to read files from the index. It caches those files based on the path to the file, specifically the path to the directory that contains the file. If there is no working directory, we use `git_path_dirname_r` to get the path to the containing directory. However, for the `.gitattributes` file in the root of the repository, this ends up normalizing the containing path to `"."` instead of the empty string and the lookup the `.gitattributes` data fails. This adds a test of attribute lookups on bare repos and also fixes the problem by simply rewriting `"."` to be `""`.
* Merge pull request #2543 from libgit2/cmn/known-transportsVicent Marti2014-09-031-8/+5
|\ | | | | Clean up transport lookup
| * remote: get rid of git_remote_valid_url()Carlos Martín Nieto2014-08-311-8/+5
| | | | | | | | | | | | | | | | | | It does the same as git_remote_supported_url() but has a name which implies we'd check the URL for correctness while we're simply looking at the scheme and looking it up in our lists. While here, fix up the tests so we check all the combination of what's supported.
* | Introduce option to use relative paths for repository work directoryjamill/relative_gitlinkJameson Miller2014-09-022-0/+21
|/ | | | | | | Teach git_repository_init_ext to use relative paths for the gitlink to the work directory. This is used when creating a sub repository where the sub repository resides in the parent repository's .git directory.
* Merge pull request #2481 from libgit2/cmn/oidarrayVicent Marti2014-08-292-0/+56
|\ | | | | merge: expose multiple merge bases
| * merge: expose multiple merge basescmn/oidarrayCarlos Martín Nieto2014-07-272-0/+56
| | | | | | | | | | | | | | | | We always calculate multiple merge bases, but up to now we had only exposed the "best" merge base. Introduce git_oidarray which analogously to git_strarray lets us return multiple ids.
* | Merge remote-tracking branch 'upstream/master' into cmn/ssh-retryCarlos Martín Nieto2014-08-2716-480/+560
|\ \
| * \ Merge pull request #2528 from libgit2/vmg/tostr_sVicent Marti2014-08-181-4/+8
| |\ \ | | | | | | | | Export `git_oid_tostr_s` instead of `_allocfmt`
| | * | oid: Export `git_oid_tostr_s` instead of `_allocfmt`vmg/tostr_sVicent Marti2014-08-181-4/+8
| | | | | | | | | | | | | | | | | | | | | | | | The old `allocfmt` is of no use to callers, as they are not able to free the returned buffer. Export a new API that returns a static string that doesn't need to be freed.
| * | | Custom transport: minor cleanupsEdward Thomson2014-08-144-348/+364
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Move the transport registration mechanisms into a new header under 'sys/' because this is advanced stuff. * Remove the 'priority' argument from the registration as it adds unnecessary complexity. (Since transports cannot decline to operate, only the highest priority transport is ever executed.) Users who require per-priority transports can implement that in their custom transport themselves. * Simplify registration further by taking a scheme (eg "http") instead of a prefix (eg "http://").
| * | Merge pull request #2484 from libgit2/fix-git-status-list-new-unreadable-folderVicent Marti2014-07-233-20/+30
| |\ \ | | | | | | | | Fix git status list new unreadable folder
| | * \ Merge remote-tracking branch 'origin/master' into ↵Alan Rogers2014-07-229-115/+165
| | |\ \ | | | |/ | | | | | | | | fix-git-status-list-new-unreadable-folder
| | * | Move the UNREADABLE enums to the correct group.Alan Rogers2014-07-221-6/+6
| | | |
| | * | Merge remote-tracking branch 'origin/development' into ↵Alan Rogers2014-07-104-28/+72
| | |\ \ | | | | | | | | | | | | | | | fix-git-status-list-new-unreadable-folder
| | * | | Whitespace wibbles.Alan Rogers2014-06-042-6/+7
| | | | |
| | * | | Merge remote-tracking branch 'origin/development' into ↵Alan Rogers2014-06-0420-125/+221
| | |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fix-git-status-list-new-unreadable-folder Conflicts: include/git2/diff.h
| | * | | | GIT_DIFF_INCLUDE_UNREADABLE_AS_UNTRACKEDAlan Rogers2014-06-031-1/+4
| | | | | |
| | * | | | Add GIT_STATUS_OPT_INCLUDE_UNREADABLE_AS_UNTRACKEDAlan Rogers2014-06-031-16/+16
| | | | | | | | | | | | | | | | | | | | | | | | and a (failing) test for it.
| | * | | | Add GIT_STATUS_OPT_INCLUDE_UNREADABLEAlan Rogers2014-05-301-0/+1
| | | | | |
| | * | | | Remove GIT_FILEMODE_NEW as it's unused.Alan Rogers2014-05-301-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | And use 0 for GIT_FILEMODE_UNREADABLE.
| | * | | | Try a value for UNREADABLE that won't get masked out?!Alan Rogers2014-05-231-1/+1
| | | | | |
| | * | | | Return GIT_FILEMODE_UNREADABLE for files that fail to stat.Alan Rogers2014-05-212-1/+1
| | | | | |
| | * | | | Start adding GIT_DELTA_UNREADABLE and GIT_STATUS_WT_UNREADABLE.Alan Rogers2014-05-202-0/+5
| | | | | |
| | * | | | Rename GIT_ENOACCESS -> GIT_EUNREADABLEAlan Rogers2014-05-201-1/+1
| | | | | |
| | * | | | Return a specific error for EACCES.Alan Rogers2014-05-151-0/+1
| | | | | |
| * | | | | git_cherry_pick -> git_cherrypickEdward Thomson2014-07-222-16/+16
| | |_|_|/ | |/| | |
| * | | | Just put it all in buffer.joshaber2014-07-163-43/+16
| | | | |
| * | | | Export git_buf_text_is_binary and git_buf_text_contains_nul.expose-buffer-binary-detectionjoshaber2014-07-152-0/+43
| | | | | | | | | | | | | | | | | | | | So that users don’t need to implement binary detection themselves.
| * | | | Merge pull request #2463 from libgit2/cmn/ssh-factory-for-pathsVicent Marti2014-07-111-0/+16
| |\ \ \ \ | | | | | | | | | | | | ssh: provide a factory function for setting ssh paths
| | * | | | ssh: provide a factory function for setting ssh pathscmn/ssh-factory-for-pathsCarlos Martín Nieto2014-07-071-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git allows you to set which paths to use for the git server programs when connecting over ssh; and we want to provide something similar. We do this by providing a factory function which can be set as the remote's transport callback which will set the given paths upon creation.
| * | | | | checkout: fix docs formatting for the optionsCarlos Martín Nieto2014-07-111-12/+12
| | | | | |
| * | | | | Documentation fixesCarlos Martín Nieto2014-07-082-13/+20
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixup git_attr_value's comment to be recognised as documentation, and include the definitions needed for clang to parse reset.h such that it shows up in the documentation. This fixes #2430.
| * | | | Fix git_cred_ssh_interactive_callback signatureJacques Germishuys2014-07-031-1/+1
| | | | |
| * | | | Merge pull request #2449 from libgit2/cmn/maint-21Vicent Marti2014-07-021-10/+12
| |\ \ \ \ | | | | | | | | | | | | Maint fixes for ssl initing and ssh exposure
| | * | | | ssh: always declare the libssh2 typesCarlos Martín Nieto2014-06-301-8/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This lets a user decide they do want to use keyboard-interactive after they've compiled.
| | * | | | ssh: create the right callback signature based on build optionsCarlos Martín Nieto2014-06-301-10/+9
| | | |_|/ | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When linking against libssh2, create the transport.h such that it contains its definition for custom crypto and keyboard-interactive callbacks. If we don't link against libssh2, create an equivalent signature which has void pointers instead of pointers to libssh2 structures. This would be one way to fix #2438.
| * | | | clone: remote git_clone_into{,_local} from the public APIcmn/clone-custom-repoCarlos Martín Nieto2014-07-021-53/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As git_clone now has callbacks to configure the details of the repository and remote, remove the lower-level functions from the public API, as they lack some of the logic from git_clone proper.
| * | | | clone: add a callback for repository creationCarlos Martín Nieto2014-07-021-3/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Analogously to the remote creation callback, provide a way for the user of git_clone() to create the repository with whichever options they desire via callback.
| * | | | Improvements to git_transport extensibilityPhilip Kelley2014-06-262-21/+48
| | | | | | | | | | | | | | | | | | | | | | | | | git_remote_set_transport now takes a transport factory rather than a transport git_clone_options now allows the caller to specify a remote creation callback
| * | | | Export git_revert_commitEdward Thomson2014-06-251-1/+1
| | | | |
| * | | | Merge remote-tracking branch 'upstream/cmn/treebuilder-perf'Carlos Martín Nieto2014-06-241-2/+4
| |\ \ \ \ | | |/ / / | |/| | |
| | * | | treebuilder: don't keep removed entries aroundCarlos Martín Nieto2014-06-101-3/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the user wants to keep a copy for themselves, they should make a copy. It adds unnecessary complexity to make sure the returned entries are valid until the builder is cleared.
| | * | | treebuilder: use a map instead of vector to store the entriesCarlos Martín Nieto2014-06-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Finding a filename in a vector means we need to resort it every time we want to read from it, which includes every time we want to write to it as well, as we want to find duplicate keys. A hash-map fits what we want to do much more accurately, as we do not care about sorting, but just the particular filename. We still keep removed entries around, as the interface let you assume they were going to be around until the treebuilder is cleared or freed, but in this case that involves an append to a vector in the filter case, which can now fail. The only time we care about sorting is when we write out the tree, so let's make that the only time we do any sorting.
* | | | | cred: add convenience function to get the usernameCarlos Martín Nieto2014-06-261-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | Since each cred defines the username on their own, introduce git_cred__username to retrieve the username pointer from them.
* | | | | cred: introduce username-only credCarlos Martín Nieto2014-06-261-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | This exists as ssh needs to know about the username to use before it can query for the supported authentication methods.
* | | | | Introduce GIT_EAUTHCarlos Martín Nieto2014-06-261-0/+1
|/ / / / | | | | | | | | | | | | Introduce this error code to signal an authentication failure.
* | | | remote: update documentationCarlos Martín Nieto2014-06-111-18/+60
|/ / / | | | | | | | | | | | | Add docs for git_clone_local_t and move the docs for the git_clone_options to each field.
* | | pathspec: use C guards in headerCarlos Martín Nieto2014-06-101-0/+3
| | |
* | | remote: fix rename docsCarlos Martín Nieto2014-06-091-3/+0
| | |
* | | Bump version to 0.21.0Carlos Martín Nieto2014-06-081-3/+3
| | | | | | | | | | | | Bump library version to 0.21.0 and SONAME to 21