| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
When `git_submodule` became an opaque structure, I forgot to add
accessor functions for the fetchRecurseSubmodules config setting.
This fixes that.
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This refactors the diff output code so that an iterator object
can be used to traverse and generate the diffs, instead of just
the `foreach()` style with callbacks. The code has been rearranged
so that the two styles can still share most functions.
This also replaces `GIT_REVWALKOVER` with `GIT_ITEROVER` and uses
that as a common error code for marking the end of iteration when
using a iterator style of object.
|
|/
|
|
|
|
| |
This should confirm that issue #835 is fixed where a submodule that
is only declared in the .gitmodules file was not accessible via the
submodule APIs.
|
|\
| |
| | |
Windows: Perform UTF-8 path conversion on the Stack
|
| | |
|
| | |
|
| | |
|
|/ |
|
|\
| |
| |
| |
| | |
Conflicts:
include/git2/refs.h
|
| | |
|
|\ \
| | |
| | | |
Make git_object_peel a bit smarter
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This expands the types of peeling that `git_object_peel` knows
how to do to include TAG -> BLOB peeling, and makes the errors
slightly more consistent depending on the situation. It also
adds a new special behavior where peeling to ANY will peel until
the object type changes (e.g. chases TAGs to a non-TAG).
Using this expanded peeling, this replaces peeling code that was
embedded in `git_tag_peel` and `git_reset`.
|
|\ \
| | |
| | | |
refs: expose git_reference_normalize_name()
|
| | | |
|
| |/
|/|
| |
| |
| | |
Check the type of the pushed object immediately instead of starting the
walk and failing in between.
|
|\ \
| | |
| | | |
Revparse: GIT_EAMBIGUOUS
|
| | |
| | |
| | |
| | | |
Revparse now returns EAMBIGUOUS if the the spec
doesn't match any refs/tags, and is <4 characters.
|
|\ \ \
| |_|/
|/| | |
Submodule extensions
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This is a big redesign of the git_submodule_status API and the
implementation of the redesigned API. It also fixes a number of
bugs that I found in other parts of the submodule API while
writing the tests for the status part.
This also fixes a couple of bugs in the iterators that had not
been noticed before - one with iterating when there is a gitlink
(i.e. separate-work-dir) and one where I was treating anything
even vaguely submodule-like as a submodule, more aggressively
than core git does.
|
| | |
| | |
| | |
| | |
| | |
| | | |
This fixes up a number of problems flagged by valgrind and also
cleans up the internal `git_submodule` allocation handling
overall with a simpler model.
|
| | |
| | |
| | |
| | |
| | | |
This replaces the old submodule API with a new extended API that
supports most of the things that can be done with `git submodule`.
|
| | | |
|
|/ /
| |
| |
| |
| |
| | |
Depending on what you had done before adding new items to the
internal ignores list, it was possible for the cache of ignore
data to be uninitialized.
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This cleans up a number of items suggested during code review
with @vmg, including:
* renaming "outside repo" config API to `git_config_open_default`
* killing the `git_config_open_global` API
* removing the `git_` prefix from the static functions in fileops
* removing some unnecessary functionality from the "cp" command
|
| |
| |
| |
| |
| |
| | |
If you use the clar cleanup callback function, you can't pass a
reference pointer to a stack allocated variable because when the
cleanup function runs, the stack won't exist anymore.
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This extends git_repository_init_ext further with support for
initializing the repository from an external template directory
and with support for the "create shared" type flags that make a
set GID repository directory.
This also adds tests for much of the new functionality to the
existing `repo/init.c` test suite.
Also, this adds a bunch of new utility functions including a
very general purpose `git_futils_mkdir` (with the ability to
make paths and to chmod the paths post-creation) and a file
tree copying function `git_futils_cp_r`. Also, this includes
some new path functions that were useful to keep the code
simple.
|
|
|
|
|
|
|
| |
In looking at PR #878, I found a few small bugs in the diff code,
mostly related to work that can be avoided when processing tree-
to-tree diffs that was always being carried out. This commit has
some small fixes in it.
|
|\
| |
| | |
API for managing in-memory ignore rules
|
| |
| |
| |
| | |
This fills out the ignore API and adds tests.
|
| | |
|
|/ |
|
| |
|
|
|
|
|
| |
Avoids getting ERROR_SHARING_VIOLATION on win32
and killing the entire clar run.
|
| |
|
| |
|
|\
| |
| | |
Clone
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| | |
Global file mode override now works properly with
the file mode stored in the tree node.
|
| | |
|
| |
| |
| |
| |
| | |
Replace with the contents of
git_index_read_tree_with_stats() and improve
documentation comments.
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Renamed git_checkout_index to what it really was,
and removed duplicate code from clone.c. Added
git_checkout_ref, which updates HEAD and hands off
to git_checkout_head.
Added tests for the options the caller can pass to
git_checkout_*.
|
| |\ |
|