| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
| |
We leave this up to the scheme in the url field. The type should only
tell us about whether we want a proxy and whether we want to auto-detect
it.
|
|
|
|
|
| |
I don't quite recall what we do in the other places where we use this,
but we should pass this payload to the callbacks.
|
| |
|
| |
|
|
|
|
| |
It is currently unused; it will go into the remote's options.
|
|
|
|
|
| |
Super minor, but it was bugging me.
There was a missing closing paren in the docs.
|
|
|
|
|
|
|
|
|
| |
Clang's documentation parser, which we use in our documentation system
does not report any comments for functions which use size_t as a type.
The root cause is buried somewhere in libclang but we can work around it
by defining the type ourselves. This typedef makes sure that libclang
sees it and that we do not change its size.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The pair of `git_blob_create_frombuffer()` and
`git_blob_create_frombuffer_commit()` is meant to replace
`git_blob_create_fromchunks()` by providing a way for a user to write a
new blob when they want filtering or they do not know the size.
This approach allows the caller to retain control over when to add data
to this buffer and a more natural fit into higher-level language's own
stream abstractions instead of having to handle IO wait in the callback.
The in-memory buffer size of 2MB is chosen somewhat arbitrarily to be a
round multiple of usual page sizes and a value where most blobs seem
likely to be either going to be way below or way over that size. It's
also a round number of pages.
This implementation re-uses the helper we have from `_fromchunks()` so
we end up writing everything to disk, but hopefully more efficiently
than with a default filebuf. A later optimisation can be to avoid
writing the in-memory contents to disk, with some extra complexity.
|
|
|
|
|
|
| |
Since the `apply` callback can defer, the `check` callback is not
necessary. Removing the `check` callback further makes the `payload`
unnecessary along with the `cleanup` callback.
|
| |
|
|
|
|
|
|
| |
Allow merge users to configure a custom default merge driver via
`git_merge_options`. Similarly, honor the `merge.default` configuration
option.
|
|
|
|
|
|
|
|
| |
Consumers can now register custom merged drivers with
`git_merge_driver_register`. This allows consumers to support the
merge drivers, as configured in `.gitattributes`. Consumers will be
asked to perform the file-level merge when a custom driver is
configured.
|
|\
| |
| | |
commit: add function to attach a signature to a commit
|
| |
| |
| |
| |
| | |
In combination with the function which creates a commit into a buffer,
this allows us to more easily create signed commits.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This ensures that when using OpenSSL a safe default set of ciphers
is selected. This is done so that the client communicates securely
and we don't accidentally enable unsafe ciphers like RC4, or even
worse some old export ciphers.
Implements the first part of https://github.com/libgit2/libgit2/issues/3682
|
|\ \
| |/
|/| |
Don't include inttypes if compiling for Mac/iOS
|
| |
| |
| |
| |
| |
| | |
This fixes an issue in Xcode 7.3 in objective-git where we get the error
"Include of non-modular header file in module". Not importing this
header again fixes the issue.
|
|\ \
| | |
| | | |
Introduce `git_odb_expand_ids`
|
| | |
| | |
| | |
| | | |
Take (and write to) an array of a struct, `git_odb_expand_id`.
|
| | | |
|
| | |
| | |
| | |
| | |
| | | |
Query the object database for multiple objects at a time, given their
object ID (which may be abbreviated) and optional type.
|
|/ /
| |
| |
| |
| |
| | |
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.
|
| | |
|
| | |
|
|\ \
| |/
|/| |
Coverity fixes
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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.
|
|/
|
|
|
| |
The `giterr_set_str` does not actually honor `GITERR_OS`. Remove
the documentation that claims that we do.
|
| |
|
| |
|
|\
| |
| | |
Filter registration
|
| | |
|
| |
| |
| |
| |
| |
| | |
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.
|
| |
| |
| |
| |
| |
| | |
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.
|
| |
| |
| |
| |
| |
| | |
Allow callers of rebase to specify custom merge options. This may
allow custom conflict resolution, or failing fast when conflicts
are detected.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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.
|
|\ \
| | |
| | | |
Introduce git_commit_extract_signature
|
| | |
| | |
| | |
| | |
| | |
| | | |
This returns the GPG signature for a commit and its contents without the
signature block, allowing for the verification of the commit's
signature.
|
| |/
|/|
| |
| |
| |
| |
| |
| | |
`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.
|
|\ \
| | |
| | | |
Export git_stash_apply_init_options
|
| |/ |
|
| | |
|
|/ |
|
|\
| |
| | |
Fix a couple function signatures
|
| | |
|
|/
|
| |
putting `0.` at the start of the line turns it into a numbered list.
|
|\
| |
| | |
Line count overflow in git_blame_hunk and git_blame__entry
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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.
|
|\ \
| | |
| | | |
diff: include commit message when formatting patch
|
| | |
| | |
| | |
| | |
| | |
| | | |
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.
|