| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
Provide a helper function to find an executable in the current process's
PATH.
|
| |
|
|\ |
|
| | |
|
|\ \
| | |
| | | |
config: handle empty conditional in includeIf
|
| | | |
|
| |/
| |
| |
| |
| |
| | |
When a config file contains `[includeIf]` (with no condition), we should
treat that as a falsey value. This means that we should properly parse
a config value of `includeIf.path`.
|
|/ |
|
|
|
|
|
|
|
| |
Using the insteadof helper would leak memory when we didn't really want
the pushInsteadOf configuration. Refactor the choice into the function
that allocates memory (or now, not) and use a more idiomatic `int`
return code.
|
| |
|
|
|
|
|
|
| |
Since we are able to give our own git checkout options,
the default git checkout strategy will be the same as
initialized in a new git_checkout_options struct.
|
|
|
|
|
|
| |
Extend the `git_worktree_add_options` to include `git_checkout_options`.
github issue #5949
|
|\
| |
| | |
blob: identify binary content
|
| |
| |
| |
| |
| | |
Introduce `git_blob_data_is_binary` to examine a blob's data, instead of
the blob itself. A replacement for `git_buf_is_binary`.
|
|\ \
| | |
| | | |
Config parsing
|
| | |
| | |
| | |
| | |
| | |
| | | |
(fixes issue #6088)
Signed-off-by: Sven Strickroth <email@cs-ware.de>
|
| | |
| | |
| | |
| | |
| | |
| | | |
(fixes issue #6089)
Signed-off-by: Sven Strickroth <email@cs-ware.de>
|
|\ \ \
| | | |
| | | | |
git_commit_summary: ignore lines with spaces
|
| |/ /
| | |
| | |
| | | |
Fixes libgit2/libgit2#6065
|
|\ \ \
| | | |
| | | | |
remotes: fix insteadOf/pushInsteadOf handling
|
| | | | |
|
| | | | |
|
|\ \ \ \
| | | | |
| | | | | |
Better revparse compatibility for at time notation
|
| |\ \ \ \
| | | |/ /
| | |/| |
| | | | |
| | | | | |
Conflicts:
src/revparse.c
|
| | | | | |
|
| | | | | |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
For better compatibility with git command which returns the oldest
log entry with a warning message.
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Fix a long long that crept past
|
| | | | | | |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
I missed this because I searched for digits before ULL, otherwise
it would match terms like "null" or "fully".
|
| | | | | | |
|
| |_|_|_|/
|/| | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Also applies to *_BINARY_DIR.
This effectively reverts 84083dcc8bd41332ccac9d7b537f3e254d79011c,
which broke all users of libgit2 that use it as a CMake subdirectory
(via `add_subdirectory()`). This is because CMAKE_SOURCE_DIR refers
to the root-most CMake directory, which in the case of
`add_subdirectory()` is a parent project to libgit2 and thus the paths
don't make any sense to the configuration files. Corollary,
CMAKE_SOURCE_DIR only makes sense if the CMake project is always the
root project - which can rarely be guaranteed.
In all honesty, CMake should deprecate and eventually remove
CMAKE_SOURCE_DIR and CMAKE_BINARY_DIR. It's been the source of headaches
and confusion for years, they're rarely useful over
CMAKE_CURRENT_(SOURCE|BINARY)_DIR or PROJECT_(SOURCE|BINARY)_DIR,
and they cause a lot of confusing configuration and source
code layouts to boot.
Any time they are used, they break `add_subdirectory()` almost 100% of
the time, cause confusing error messages, and hide subtle bugs.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Users may want to validate raw object content; provide them a function
to do so.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Return `GIT_EINVALID` on parse errors so that direct callers of parse
functions can determine when there was a failure to parse the object.
The object parser functions will swallow this error code to prevent it
from propagating down the chain to end-users. (`git_merge` should not
return `GIT_EINVALID` when a commit it tries to look up is not valid,
this would be too vague to be useful.)
The only public function that this affects is
`git_signature_from_buffer`, which is now documented as returning
`GIT_EINVALID` when appropriate.
|
|\ \ \ \ \
| |_|_|/ /
|/| | | | |
Minor code cleanups
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Instead of using the project-specific `libgit2_SOURCE_DIR` and
`libgit2_BINARY_DIR` variables, use `CMAKE_SOURCE_DIR` and
`CMAKE_BINARY_DIR`.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
The filebuf functions should use hashes directly, not indirectly
using the oid functions.
|
| | | | |
| | | | |
| | | | |
| | | | | |
Remove some unnecessary includes from utility code.
|
|\ \ \ \ \
| |/ / / /
|/| | | | |
Fix repo init when template dir is non-existent
|
| | | | | |
|
| | |/ /
| |/| |
| | | |
| | | |
| | | | |
This mimics the behaviour of git which just prints a
warning and continues with the repo initialisation.
|
| | | | |
|
| | | |
| | | |
| | | |
| | | | |
Instead of `git__date`, just use `git_date`.
|
| | | |
| | | |
| | | |
| | | |
| | | | |
`git_tag_name_is_valid` needs to set validity to 0 when it
short-circuits.
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | | |
The select hashes module selects the hash; the CMakeLists.txt selects
the files to implement it.
|
| | | |
| | | |
| | | |
| | | |
| | | | |
Update the global variables `LIBGIT2_OBJECTS` to
`LIBGIT2_DEPENDENCY_OBJECTS` for clarity and consistency.
|
|\ \ \ \
| | | | |
| | | | |
| | | | | |
lhchavez/drop-volatile-qualifier-in-atomic-exchange
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
When building under gcc 11, there is a warning about an incompatible pointer
type, since
[`__atomic_exchange`](https://gcc.gnu.org/onlinedocs/gcc/_005f_005fatomic-Builtins.html)
does not take `volatile` pointers:
```
In file included from ../src/common.h:81,
from ../src/transports/winhttp.c:8:
../src/thread-utils.h: In function ‘git___swap’:
../src/thread-utils.h:168:9: warning: argument 3 of ‘__atomic_exchange’ discards ‘volatile’ qualifier [-Wincompatible-pointer-types]
168 | __atomic_exchange(ptr, &newval, &foundval, __ATOMIC_SEQ_CST);
| ^~~~~~~~~~~~~~~~~
```
This change drops the `volatile` qualifier so that the pointer type matches
what `__atomic_exchange` expects.
|
|/ / / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
When building under gcc 11, there is a warning about a misaligned guard clause
because there were mixed spaces and tabs:
```
[128/634] Building C object src/CMakeFiles/git2internal.dir/threadstate.c.o
../src/threadstate.c: In function ‘threadstate_dispose’:
../src/threadstate.c:39:5: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
39 | if (threadstate->error_t.message != git_str__initstr)
| ^~
../src/threadstate.c:41:9: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’
41 | threadstate->error_t.message = NULL;
| ^~~~~~~~~~~
../src/threadstate.c: At top level:
```
This change indents the code with tabs for consistency with the rest of the
code, which makes the warning go away.
|