| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
| |
FLAG_BITS only seems to be used internally
|
|\
| |
| | |
remote: accept a repository and remote name for deletion
|
| |
| |
| |
| |
| |
| |
| |
| | |
We don't need the remote loaded, and the function extracted both of
these from the git_remote in order to do its work, so let's remote a
step and not ask for the loaded remote at all.
This fixes #2390.
|
|\ \
| | |
| | | |
[factor] Join typedef and struct definitions in single file.
|
| | | |
|
|\ \ \
| | | |
| | | | |
Add support for setting the SSL CA location
|
| | |/
| |/|
| | |
| | |
| | | |
This allows users to specify self-signed certificates, or to provide their
own certificate stores on limited platforms such as mobile phones.
|
|\ \ \
| | | |
| | | | |
Allow to propagate checkout callbacks to git HARD reset
|
| | | |
| | | |
| | | |
| | | | |
Signed-off-by: Sven Strickroth <email@cs-ware.de>
|
|\ \ \ \
| | | | |
| | | | | |
Provide host name to certificate_check_cb
|
| | |/ /
| |/| |
| | | |
| | | | |
Signed-off-by: Sven Strickroth <email@cs-ware.de>
|
| | | | |
|
|\ \ \ \
| | | | |
| | | | | |
Implement git-describe
|
| | | | | |
|
| | | | |
| | | | |
| | | | |
| | | | | |
And implement the option init functions for this and the format options.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
When we describe the workdir, we perform a describe on HEAD and then
check to see if the worktree is dirty. If it is and we have a suffix
string, we append that to the buffer.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Instead of printing out to the buffer inside the information-gathering
phase, write the data to a intermediate result structure.
This allows us to split the options into gathering options and
formatting options, simplifying the gathering code.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
We don't describe arbitrary object, so let's give it the name of the one
object type we accept.
|
| |\ \ \ \
| | |/ / / |
|
| | | | | |
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Introduce reference transactions
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This leaves space for future expansion to locking other resources
without having to change the API for references.
|
| | | | | | |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
A transaction allows you to lock multiple references and set up changes
for them before applying the changes all at once (or as close as the
backend supports).
This can be used for replication purposes, or for making sure some
operations run when the reference is locked and thus cannot be changed.
|
| | |/ / /
| |/| | | |
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Implement opportunistic ref updates
|
| |/ / / /
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
With opportunistic ref updates, git has introduced the concept of having
base refspecs *and* refspecs that are active for a particular fetch.
Let's start by letting the user override the refspecs for download.
|
| | | | | |
|
|/ / / / |
|
|\ \ \ \
| | | | |
| | | | | |
Provide a callback for certificate validation
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
The user may have the data hashed as MD5 or SHA-1, so we should provide
both types for consumption.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Instead of using the libssh2 defines, provide our own, which eases usage
as we do not need to check whether libgit2 was built with libssh2 or not.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Instead of spreading the data in function arguments, some of which
aren't used for ssh and having a struct only for ssh, use a struct for
both, using a common parent to pass to the callback.
|
| |\ \ \ \
| | | |_|/
| | |/| | |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This option make it easy to ignore anything about the server we're
connecting to, which is bad security practice. This was necessary as we
didn't use to expose detailed information about the certificate, but now
that we do, we should get rid of this.
If the user wants to ignore everything, they can still provide a
callback which ignores all the information passed.
|
| | | | |
| | | | |
| | | | |
| | | | | |
This should make the mingw compiler happy.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
We should let the user decide whether to cancel the connection or not
regardless of whether our checks have decided that the certificate is
fine. We provide our own assessment to the callback to let the user fall
back to our checks if they so desire.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Instead of the parsed data, we can ask OpenSSL to give us the
DER-encoded version of the certificate, which the user can then parse
and validate.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
If the certificate validation fails (or always in the case of ssh),
let the user decide whether to allow the connection.
The data structure passed to the user is the native certificate
information from the underlying implementation, namely OpenSSL or
WinHTTP.
|
| |/ / /
|/| | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
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 `""`.
|
|\ \ \ \
| | | | |
| | | | | |
Clean up transport lookup
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
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.
|
|/ / / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
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: expose multiple merge bases
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
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.
|
|\ \ \ \ |
|
| |\ \ \ \
| | | | | |
| | | | | | |
Export `git_oid_tostr_s` instead of `_allocfmt`
|
| | | |_|/
| | |/| |
| | | | |
| | | | |
| | | | |
| | | | | |
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.
|