summaryrefslogtreecommitdiff
path: root/include
Commit message (Collapse)AuthorAgeFilesLines
* commit: add function to attach a signature to a commitcmn/commit-with-signatureCarlos Martín Nieto2016-03-151-0/+21
| | | | | In combination with the function which creates a commit into a buffer, this allows us to more easily create signed commits.
* Merge pull request #3656 from ethomson/exists_prefixesVicent Marti2016-03-081-1/+47
|\ | | | | Introduce `git_odb_expand_ids`
| * git_odb_expand_ids: accept git_odb_expand_id arrayEdward Thomson2016-03-081-10/+25
| | | | | | | | Take (and write to) an array of a struct, `git_odb_expand_id`.
| * git_odb_expand_ids: rename func, return the typeEdward Thomson2016-03-081-6/+7
| |
| * git_odb_exists_many_prefixes: query odb for multiple short idsEdward Thomson2016-03-071-1/+31
| | | | | | | | | | Query the object database for multiple objects at a time, given their object ID (which may be abbreviated) and optional type.
* | commit: split creating the commit and writing it outcmn/commit-to-memoryCarlos Martín Nieto2016-03-081-0/+46
|/ | | | | | Sometimes you want to create a commit but not write it out to the objectdb immediately. For these cases, provide a new function to retrieve the buffer instead of having to go through the db.
* Bump version to 0.24.0Carlos Martín Nieto2016-03-031-3/+3
|
* git_libgit2_opts: introduce `GIT_OPT_ENABLE_STRICT_OBJECT_CREATION`Edward Thomson2016-02-281-0/+9
|
* Merge pull request #3628 from pks-t/pks/coverity-fixesEdward Thomson2016-02-251-1/+1
|\ | | | | Coverity fixes
| * index: fix contradicting comparisonPatrick Steinhardt2016-02-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The overflow check in `read_reuc` tries to verify if the `git__strtol32` parses an integer bigger than UINT_MAX. The `tmp` variable is casted to an unsigned int for this and then checked for being greater than UINT_MAX, which obviously can never be true. Fix this by instead fixing the `mode` field's size in `struct git_index_reuc_entry` to `uint32_t`. We can now parse the int with `git__strtol64`, which can never return a value bigger than `UINT32_MAX`, and additionally checking if the returned value is smaller than zero. We do not need to handle overflows explicitly here, as `git__strtol64` returns an error when the returned value would overflow.
* | giterr_set_str: remove `GITERR_OS` documentationEdward Thomson2016-02-231-5/+0
|/ | | | | The `giterr_set_str` does not actually honor `GITERR_OS`. Remove the documentation that claims that we do.
* git_libgit2_opts: document GIT_OPT_SET_USER_AGENTEdward Thomson2016-02-221-0/+6
|
* Fix a few checkout -> rebase typoscmn/typoCarlos Martín Nieto2016-02-221-1/+1
|
* Merge pull request #3597 from ethomson/filter_registrationCarlos Martín Nieto2016-02-191-25/+34
|\ | | | | Filter registration
| * filter: clean up documentation around custom filtersEdward Thomson2016-02-091-25/+34
| |
* | commit: expose the different kinds of errorsCarlos Martín Nieto2016-02-161-0/+6
| | | | | | | | | | | | We should be checking whether the object we're looking up is a commit, and we should let the caller know whether the not-found return code comes from a bad object type or just a missing signature.
* | rebase: persist a single in-memory indexEdward Thomson2016-02-151-6/+15
| | | | | | | | | | | | When performing an in-memory rebase, keep a single index for the duration, so that callers have the expected index lifecycle and do not hold on to an index that is free'd out from under them.
* | rebase: allow custom merge_optionsEdward Thomson2016-02-111-1/+7
| | | | | | | | | | | | Allow callers of rebase to specify custom merge options. This may allow custom conflict resolution, or failing fast when conflicts are detected.
* | rebase: introduce inmemory rebasingEdward Thomson2016-02-111-1/+16
| | | | | | | | | | | | | | | | | | | | Introduce the ability to rebase in-memory or in a bare repository. When `rebase_options.inmemory` is specified, the resultant `git_rebase` session will not be persisted to disk. Callers may still analyze the rebase operations, resolve any conflicts against the in-memory index and create the commits. Neither `HEAD` nor the working directory will be updated during this process.
* | Merge pull request #3599 from libgit2/gpgsignVicent Marti2016-02-091-0/+12
|\ \ | | | | | | Introduce git_commit_extract_signature
| * | Introduce git_commit_extract_signaturegpgsignCarlos Martín Nieto2016-02-091-0/+12
| | | | | | | | | | | | | | | | | | This returns the GPG signature for a commit and its contents without the signature block, allowing for the verification of the commit's signature.
* | | Better document `git_merge_commits` reduxEdward Thomson2016-02-081-8/+0
| |/ |/| | | | | | | | | | | | | `git_merge_commits` and `git_merge` now *do* handle recursive base building for criss-cross merges. Remove the documentation that says that they do not. This reverts commit 5e44d9bcb6d5b20922f49b1913723186f8ced8b5.
* | Merge pull request #3584 from jbreeden/export_fnEdward Thomson2016-02-041-1/+1
|\ \ | | | | | | Export git_stash_apply_init_options
| * | Export git_stash_apply_init_optionsjbreeden2016-01-231-1/+1
| |/
* | Fix typoEphemera2016-02-051-1/+1
| |
* | Fix a typo in documentationNicolas Vanheuverzwijn2016-02-031-1/+1
|/
* Merge pull request #3546 from Cruel/masterEdward Thomson2015-12-261-1/+1
|\ | | | | Fix a couple function signatures
| * Fix a couple function signaturesThomas Edvalson2015-12-141-1/+1
| |
* | fix git_blob_create_fromchunks documentationtepas2015-12-161-2/+2
|/ | | putting `0.` at the start of the line turns it into a numbered list.
* Merge pull request #3521 from pks-t/blame-line-overflowEdward Thomson2015-12-141-6/+6
|\ | | | | Line count overflow in git_blame_hunk and git_blame__entry
| * blame: use size_t for line counts in git_blame_hunkPatrick Steinhardt2015-12-011-6/+6
| | | | | | | | | | | | | | | | | | | | It is not unreasonable to have versioned files with a line count exceeding 2^16. Upon blaming such files we fail to correctly keep track of the lines as `git_blame_hunk` stores them in `uint16_t` fields. Fix this by converting the line fields of `git_blame_hunk` to `size_t`. Add test to verify behavior.
* | Merge pull request #3522 from pks-t/email-format-commit-messageCarlos Martín Nieto2015-12-102-1/+17
|\ \ | | | | | | diff: include commit message when formatting patch
| * | diff: include commit message when formatting patchPatrick Steinhardt2015-12-011-1/+4
| | | | | | | | | | | | | | | | | | When formatting a patch as email we do not include the commit's message in the formatted patch output. Implement this and add a test that verifies behavior.
| * | commit: introduce `git_commit_body`Patrick Steinhardt2015-12-011-0/+13
| |/ | | | | | | | | | | | | | | | | It is already possible to get a commit's summary with the `git_commit_summary` function. It is not possible to get the remaining part of the commit message, that is the commit message's body. Fix this by introducing a new function `git_commit_body`.
* | Play nice with the docs.typedef-submodule-cbjoshaber2015-12-081-5/+4
| |
* | Use a typedef for the submodule_foreach callback.joshaber2015-12-081-1/+13
|/ | | | | | This fits with the style for the rest of the project, but more importantly, makes life easier for bindings authors who auto-generate code.
* recursive merge: add a recursion limitEdward Thomson2015-11-251-0/+8
|
* merge: add simple recursive testEdward Thomson2015-11-251-4/+12
| | | | | Add a simple recursive test - where multiple ancestors exist and creating a virtual merge base from them would prevent a conflict.
* merge: rename `git_merge_tree_flags_t` -> `git_merge_flags_t`Edward Thomson2015-11-251-17/+19
|
* repository: distinguish sequencer cherry-pick and revertcmn/repository-state-sequencerCarlos Martín Nieto2015-11-201-0/+2
| | | | These are not quite like their plain counterparts and require special handling.
* settings: allow users to set PROGRAMDATAEdward Thomson2015-11-161-5/+6
| | | | | | Allow users to set the `git_libgit2_opts` search path for the `GIT_CONFIG_LEVEL_PROGRAMDATA`. Convert `GIT_CONFIG_LEVEL_PROGRAMDATA` to `GIT_SYSDIR_PROGRAMDATA` for setting the configuration.
* Merge pull request #3170 from CmdrMoozy/nsec_fixCarlos Martín Nieto2015-11-121-2/+3
|\ | | | | git_index_entry__init_from_stat: set nsec fields in entry stats
| * Merge branch 'master' into nsec_fix_nextAxel Rasmussen2015-10-014-3/+23
| |\
| * | settings: expose GIT_USE_NSEC flag in git_libgit2_featuresAxel Rasmussen2015-09-181-2/+3
| | |
* | | settings: add a setter for a custom user-agentCarlos Martín Nieto2015-11-121-0/+3
| | |
* | | stream: allow registering a user-provided TLS constructorcmn/tls-registerCarlos Martín Nieto2015-11-031-0/+13
| | | | | | | | | | | | | | | This allows the application to use their own TLS stream, regardless of the capabilities of libgit2 itself.
* | | Add diff progress callback.Jason Haslam2015-11-021-5/+24
| | |
* | | Fix build for custom transport usersLeo Yang2015-10-301-0/+1
| | | | | | | | | | | | | | | We should explicitly include the declaration of git_strarray from "include/git2/sys/transport.h"
* | | merge: Implement `GIT_MERGE_TREE_SKIP_REUC`Vicent Marti2015-10-271-0/+5
| | |
* | | Merge pull request #3477 from linquize/inttypes.hEdward Thomson2015-10-231-1/+1
|\ \ \ | | | | | | | | inttypes.h is built-in header file since MSVC 2013