| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
The public key field is optional and as such can take NULL. Account for
that and do not call strlen() on NULL values. Also assert() for non-NULL
values of username & private key.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Declare GIT_CREDTYPE_SSH_MEMORY to have consistent API independently of
whether libgit2 was built with or without in-memory key passing support.
Or rather, to have it at all since build-time definitions are not stored
in headers.
|
| | | | |
|
| | | |
| | | |
| | | |
| | | | |
To not modify the external api.
|
| |/ / |
|
|\ \ \
| | | |
| | | | |
Rename GIT_EMERGECONFLICT to GIT_ECONFLICT
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
We do not error on "merge conflicts"; on the contrary, merge conflicts
are a normal part of merging. We only error on "checkout conflicts",
where a change exists in the index or the working directory that would
otherwise be overwritten by performing the checkout.
This *may* happen during merge (after the production of the new index
that we're going to checkout) but it could happen during any checkout.
|
|\ \ \ \
| |/ / /
|/| | | |
Changed README to use new OCaml bindings to git
|
|/ / / |
|
|\ \ \
| | | |
| | | | |
Include conflicts when diffing
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
If there exists a conflict in the index, but no file in the working
directory, this implies that the user wants to accept the resolution
by removing the file. Thus, remove the conflict entry from the
index, instead of trying to add a (nonexistent) file.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Mark the `old_file` and `new_file` sides of a delta with a new bit,
`GIT_DIFF_FLAG_EXISTS`, that introduces that a particular side of
the delta exists in the diff.
This is useful for indicating whether a working directory item exists
or not, in the presence of a conflict. Diff users may have previously
used DELETED to determine this information.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
When confronted with a conflict in the index, `git_index_add_all`
should stage the working directory copy. If there is no file in the
working directory, the conflict should simply be removed.
|
| | | |
| | | |
| | | |
| | | |
| | | | |
cl_git_sandbox_init_new() will create a clar temp directory and
initialize a new repository at that location.
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
It's not always obvious the mapping between stage level and
conflict-ness. More importantly, this can lead otherwise sane
people to write constructs like `if (!git_index_entry_stage(entry))`,
which (while technically correct) is unreadable.
Provide a nice method to help avoid such messy thinking.
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Since a diff entry only concerns a single entry, zero the information
for the index side of a conflict. (The index entry would otherwise
erroneously include the lowest-stage index entry - generally the
ancestor of a conflict.)
Test that during status, the index side of the conflict is empty.
|
| | | | |
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | | |
Make sure that we provide a blanked nitem side when the item does not
exist in the working directory.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
When diffing against an index, return a new `GIT_DELTA_CONFLICTED`
delta type for items that are conflicted. For a single file path,
only one delta will be produced (despite the fact that there are
multiple entries in the index).
Index iterators now have the (optional) ability to return conflicts
in the index. Prior to this change, they would be omitted, and callers
(like diff) would omit conflicted index entries entirely.
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | | |
If `git_index_remove_bypath` does no work, and returns an OK error
code, it should not set an error message.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
When adding a conflict for some path, remove the staged entry.
Otherwise, an illegal index (with both stage 0 and high-stage
entries) would result.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Wrap the iterator current / advance functions so that we can extend
them, but also handle GIT_ITEROVER cases in the iterator funcs
instead of the callers.
|
| | |/
| |/| |
|
|\ \ \
| | | |
| | | | |
Fill the pointers for matching refspecs
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
When we look for which remote corresponds to a remote-tracking branch,
we look in the refspecs to see which ones matches. If none do, we should
abort. We currently ignore the error message from this operation, so
let's not do that anymore.
As part of the test we're writing, let's test for the expected behaviour
if we cannot find a refspec which tells us what the remote-tracking
branch for a remote would look like.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
When we find out that we're dealing with a matching refspec, we set the
flag and return immediately. This leaves the strings as NULL, which
breaks the contract.
Assign these pointers to a string with the correct values.
|
|\ \ \ \
| |_|/ /
|/| | | |
Tackle remote API issues from bindings
|
| | | |
| | | |
| | | |
| | | |
| | | | |
These are updates, same as the rest, we should call this callback. As we
are using the callback, let's make sure to skip unnecessary updates.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
When we moved from acting on the instance to acting on the
configuration, we dropped the validation of the passed refspec, which
can lead to writing an invalid refspec to the configuration. Bring that
validation back.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
An anonymous remote is not configured and cannot therefore have
configured refspecs. Remove the parameter which adds this from the
constructor.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
These were left over from the culling as it's not clear which use-cases
might benefit from this. It is not clear that we want to support any
use-case which depends on changing the remote's idea of the base
refspecs rather than passing in different per-operation refspec list, so
remove these functions.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
The code used to rely on the clone code calling the remote's save, which
does not happen anymore, meaning that the configuration settings the
remote expected were not being written to disk.
The run-time configuration was still being affected, so the right branch
was being cloned. The tests continued to pass as we did not check for
the configuration entires. Fix this by creating the remote with the
single-branch refspec we want and checking for its existence in the
configuration.
|
| | | | |
|
|\ \ \ \
| |_|_|/
|/| | | |
Fix ident replacement to match Git behavior
|
|/ / /
| | |
| | |
| | |
| | | |
Git inserts a space after the SHA1 (as of 2.1.4 at least), so do the
same.
|
|\ \ \
| | | |
| | | | |
Thin packs: don't
|
| | | |
| | | |
| | | |
| | | |
| | | | |
When thickening a pack, avoid loading already loaded bases and
trying to insert them all over again.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
When creating an index, know that we do not have an index for
our own packfile, preventing some unnecessary file opens and
error reporting.
|
|\ \ \ \
| |/ / /
|/| | | |
openssl: don't try to handle WANT_READ or WANT_WRITE
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
We use a blocking socket and set the mode to AUTO_RETRY which means that
`SSL_write` and `SSL_read` will only return once the read or write has
been completed. We therefore don't need to handle partial writes or
re-try read due to a regenotiation.
While here, consider that a zero also indicates an error condition.
|
| |_|/
|/| | |
|
|\ \ \ |
|
| | | | |
|
|\ \ \ \
| | | | |
| | | | | |
Fix error when building as C++.
|
| | | | | |
|
|\ \ \ \ \
| | | | | |
| | | | | | |
index_add_all: include untracked files in new subdirs
|