| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
|
|
|
|
|
|
|
| |
Add structures and preliminary functions to take a buffer, file or
blob and write the contents in chunks through an arbitrary number
of chained filters, finally writing into a user-provided function
accept the contents.
|
|\
| |
| | |
merge: lock index during the merge (not just checkout)
|
| | |
|
|/
|
|
|
| |
Don't require the branch to rebase, if given `NULL`, simply look up
`HEAD`.
|
|\
| |
| | |
Fix doc comment formatting
|
| | |
|
| | |
|
|/ |
|
| |
|
| |
|
|\
| |
| | |
config: add parsing and getter for paths
|
| | |
|
|\ \
| | |
| | | |
Fixed typo in git_repository_reinit_filesystem() documentation
|
| | | |
|
|/ /
| |
| |
| |
| | |
It was missing "common.h" and "types.h" like other system headers.
This generated compilation errors if including it directly.
|
| |
| |
| |
| |
| |
| |
| | |
On case insensitive filesystems, we may have files in the working
directory that case fold to a name we want to write. Remove those
files (by default) so that we will not end up with a filename that
has the unexpected case.
|
| |
| |
| |
| |
| |
| | |
Walk up the tree to mkdir, which is less immediately efficient,
but allows us to look at intermediate directories that may need
attention.
|
|/
|
|
|
| |
Checkout can now provide performance data about the number of (some)
syscalls performed using an optional callback.
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
files
The implementation of the hashsig API disallows computing a signature on
small files containing only a few lines. This new flag disables this
behavior.
git_diff_find_similar() sets this flag by default which means that rename
/ copy detection of small files will now work. This in turn affects the
behavior of the git_status and git_blame APIs which will now detect rename
of small files assuming the right options are passed.
|
| | |
|
|\ \
| | |
| | | |
Better document `git_merge_commits`
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
`git_merge_commits` (and thus `git_merge`) do not use the same
strategy as `git-merge-recursive` wherein they can produce an
artificial common ancestor that is the merge of all common
ancestors. Document this accordingly.
|
| | |
| | |
| | |
| | | |
Bump the version number to 0.22.0 and the SOVERSION to 22.
|
|\ \ \
| |/ /
|/| | |
|
| |/
| |
| |
| |
| |
| |
| |
| |
| | |
This introduces the functionality of submodule update in
'git_submodule_do_update'. The existing 'git_submodule_update' function is
renamed to 'git_submodule_update_strategy'. The 'git_submodule_update'
function now refers to functionality similar to `git submodule update`,
while `git_submodule_update_strategy` is used to get the configured value
of submodule.<name>.update.
|
| | |
|
| | |
|
|\ \
| | |
| | | |
Remote-tracking branch prunning
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This option does not get persisted to disk, which makes it different
from the rest of the setters. Remove it until we go all the way.
We still respect the configuration option, and it's still possible to
perform a one-time prune by calling the function.
|
| | | |
|
|\ \ \
| | | |
| | | | |
remote: remove git_push from the public API
|
| |/ /
| | |
| | |
| | |
| | | |
Instead we provide git_remote_upload() and git_remote_update_tips() in
order to have a parallel API for fetching and pushing.
|
| | |
| | |
| | |
| | |
| | |
| | | |
This function is a constructor, so let's name it like one and leave
_create() for the reference functions, which do create/write the
reference.
|
| |/
|/|
| |
| |
| |
| | |
For the REUC and NAME entries, we use size_t internally, and we take
size_t for the get_byindex() functions, but the entrycount() functions
strangely cast to an unsigned int instead.
|
|\ \
| | |
| | | |
Make OpenSSL locking warnings more severe
|
| |/
| |
| |
| |
| | |
Our git_openssl_set_locking() would ideally not exist. Make it clearer
that we provide it as a last resort and you should prefer anything else.
|
| |
| |
| |
| |
| | |
GIT_BEGIN/END_DECL were missing from sys/refs.h and preventing
compilation with g++ as the symbol were mangled.
|
|/
|
|
|
|
| |
Path validation may be influenced by `core.protectHFS` and
`core.protectNTFS` configuration settings, thus treebuilders
can take a repository to influence their configuration.
|
|
|
|
| |
This should make it clearer what the return value implies.
|
|
|
|
|
| |
The push cannot be successful if we sent a bad packfile. We should
return an error in that case instead of storing it elsewhere.
|
|\
| |
| | |
Introduce stackable IO streams
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We currently have gitno for talking over TCP, but this needs to know
about both plaintext and OpenSSL connections and the code has gotten
somewhat messy with ifdefs determining which version of the function
should be called.
In order to clean this up and abstract away the details of sending over
the different types of streams, we can instead use an interface and
stack stream implementations.
We may not be able to use the stackability with all streams, but we
are definitely be able to use the abstraction which is currently spread
between different bits of gitno.
|
|\ \
| | |
| | | |
doc: add documentation to all the public structs and enums
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This makes them show up in the reference, even if the text itself isn't
the most descriptive.
These have been found with
grep -Przon '\n\ntypedef struct.*?\{' -- include
grep -Przon '\n\ntypedef enum.*?\{' -- include
|
| | |
| | |
| | |
| | |
| | | |
The iterator is the last argument. There is also no returned notes, just
ids, so the comment about freeing is out of place.
|
|/ /
| |
| |
| |
| | |
Make it consistent between git_note_create() and git_note_remote() by
putting it after the repository.
|
|\ \
| | |
| | | |
Spelling fixes
|