| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
This adds the ident filter (that knows how to replace $Id$) and
tweaks the filter APIs and code so that git_filter_source objects
actually have the updated OID of the object being filtered when
it is a known value.
|
|
|
|
|
|
|
|
| |
Extend the git2/sys/filter API with functions to look up a filter
and add it manually to a filter list. This requires some trickery
because the regular attribute lookups and checks are bypassed when
this happens, but in the right hands, it will allow a user to have
granular control over applying filters.
|
|
|
|
|
| |
This updates the git filter registry to be a little cleaner and
plugs some memory leaks.
|
|
|
|
|
|
|
|
|
|
| |
Increasingly there are a number of components that want to do some
cleanup at global shutdown time (at least if there are not going
to be memory leaks). This creates a very simple system of shutdown
hooks that will be invoked by git_threads_shutdown. Right now, the
maximum number of hooks is hardcoded, but since adding a hook is
not a public API, it should be fine and I thought it was better to
start off with really simple code.
|
|
|
|
|
| |
There was a possible circumstance that could result in reading
past the end of a buffer. This check fixes that.
|
|
|
|
| |
I knew I forgot something
|
|
|
|
|
|
|
|
|
|
|
| |
This moves the git_filter_list into the public API so that users
can create, apply, and dispose of filter lists. This allows more
granular application of filters to user data outside of libgit2
internals.
This also converts all the internal usage of filters to the public
APIs along with a few small tweaks to make it easier to use the
public git_buffer stuff alongside the internal git_buf.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The filter registry as implemented was too primitive to actually
work once multiple filters were coming into play. This expands
the implementation of the registry to handle multiple prioritized
filters correctly.
Additionally, this adds an "attributes" field to a filter that
makes it really really easy to implement filters that are based
on one or more attribute values. The lookup and even simple value
checking can all happen automatically without custom filter code.
Lastly, with the registry improvements, this fills out the filter
lifecycle callbacks, with initialize and shutdown callbacks that
will be called before the filter is first used and after it is
last invoked. This allows for system-wide initialization and
cleanup by the filter.
|
| |
|
|
|
|
|
|
|
| |
This creates include/sys/filter.h with a basic definition of a
git_filter and then converts the internal code to use it. There
are related internal objects (git_filter_list) that we will want
to publish at some point, but this is a first step.
|
|
|
|
|
|
|
|
|
|
| |
This begins the process of exposing git_filter objects to the
public API. This includes:
* new public type and API for `git_buffer` through which an
allocated buffer can be passed to the user
* new API `git_blob_filtered_content`
* make the git_filter type and GIT_FILTER_TO_... constants public
|
|\
| |
| | |
Support config includes
|
| |
| |
| |
| |
| |
| |
| | |
As the include depth increases, the chance of a realloc
increases. This means that whenever we run git_array_alloc() or call
config_parse(), we need to remember what our reader's index is so we
can look it up again.
|
| | |
|
| |
| |
| |
| |
| | |
When two or more variables of the same name exist and the user asks
for a scalar, we must return the latest value assign to it.
|
| |
| |
| |
| |
| |
| | |
We need to refresh the variables from the included files if they are
changed, so loop over all included files and re-parse the files if any
of them has changed.
|
| |
| |
| |
| |
| | |
When refreshing we need to refresh if any of the files have been
touched, so we need to keep the list.
|
| |
| |
| |
| |
| | |
Relative, absolute and home-relative paths are supported. The
recursion limit it set at 10, just like in git.
|
| |
| |
| |
| |
| |
| |
| | |
In order to support config includes, we must differentiate between the
backend's main file and the file we are currently parsing.
This lays the groundwork for includes, keeping the current behaviours.
|
|\ \
| | |
| | | |
Fix failure in win32 git path guessing
|
| | |
| | |
| | |
| | |
| | | |
Demand read only access to registry key instead of full access.
This might happen in Windows Vista and later.
|
|/ /
| |
| |
| | |
The buffer size 0 was definitely not enough so it failed
|
|\ \
| | |
| | | |
No such thing as an orphan branch
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Unfortunately git-core uses the term "unborn branch" and "orphan
branch" interchangeably. However, "orphan" is only really there for
the checkout command, which has the `--orphan` option so it doesn't
actually create the branch.
Branches never have parents, so the distinction of a branch with no
parents is odd to begin with. Crucially, the error messages deal with
unborn branches, so let's use that.
|
|\ \ \
| |/ /
|/| | |
Provide libssh2 error message
|
| | | |
|
| | | |
|
|/ / |
|
|\ \
| | |
| | | |
git_clone supports init_options
|
|/ / |
|
| |
| |
| |
| | |
This tests the fixes for issues from #1849
|
|\ \
| | |
| | | |
Treewalker
|
| | |
| | |
| | |
| | | |
supplied callback
|
|/ /
| |
| |
| | |
as the return value of git_tree_walk
|
|\ \
| | |
| | | |
Fix cl_assert_equal_sz error message formating
|
| | | |
|
|/ / |
|
|\ \
| | |
| | | |
SSH: Clone fails with errors: ERROR: Repository invalid & Early EOF
|
| | | |
|
| | | |
|
|\ \ \
| | | |
| | | | |
errors: Fix format of some error messages
|
|/ / / |
|
|\ \ \
| | | |
| | | | |
revwalk: allow simplifying by first-parent
|
| |/ /
| | |
| | |
| | |
| | | |
When enabled, only the first parent of each commit will be queued,
enabling a simple way of using first-parent simplification.
|
|\ \ \
| | | |
| | | | |
Make odb_loose return EAMBIGUOUS when required
|
| | | | |
|
|/ / / |
|
|\ \ \
| | | |
| | | | |
fixing headers with bad values for objective-c
|
| | | | |
|
| | | | |
|