| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
This is a contract that we made in the library and that we need to uphold. The
contents of a blob can never be NULL because several parts of the library (including
the filter and attributes code) expect `git_blob_rawcontent` to always return a
valid pointer.
|
|\
| |
| | |
Update message for error during push
|
| |
| |
| |
| |
| |
| | |
When attempting to update a reference on a remote during push, and the
reference on the remote refers to a commit that does not exist locally,
then we should report a more clear error message.
|
|\ \
| | |
| | | |
Clarify the git_remote_ls() documentation
|
| | |
| | |
| | |
| | |
| | | |
On disconnect we simply ask the transport to close the connection, we do
not free it.
|
| | |
| | |
| | |
| | |
| | | |
Make it clear that this is not the ls-remote command but a way to access
the data we have and how long it's kept around.
|
|\ \ \
| | | |
| | | | |
fetch: clear the connection data on close
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
When we fetch twice with the same remote object, we did not properly
clear the connection flags, so we would leak state from the last
connection.
This can cause the second fetch with the same remote object to fail if
using a HTTP URL where the server redirects to HTTPS, as the second
fetch would see `use_ssl` set and think the initial connection wanted to
downgrade the connection.
|
|\ \ \
| |/ /
|/| | |
travis: disable the cert callback on OSX
|
|/ /
| |
| |
| |
| |
| | |
The sshd on OSX has stopped responding to the setting which this test
assumes is there, so let's disable it until we can figure out what's
happening.
|
| | |
|
|\ \
| | |
| | | |
Fix missing object in tests/resources/crlf by changing the tail commit
|
| | | |
|
|\ \ \
| | | |
| | | | |
Provide a convenience function `git_remote_push()`
|
| | | |
| | | |
| | | |
| | | |
| | | | |
If the user does not pass any refspecs to push, try to use those
configured via the configuration or via add_push().
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
We have the step-by-step method in the initialization function as we
want to remove references based on the list of references which are
already there, and we can use the convenience function for testing the
main push.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This function, similar in style to git_remote_fetch(), performs all the
steps required for a push, with a similar interface.
The remote callbacks struct has learnt about the push callbacks, letting
us set the callbacks a single time instead of setting some in the remote
and some in the push operation.
|
|\ \ \ \
| | | | |
| | | | | |
Fixed active_refspecs field not initialized on new git_remote objects
|
| | |_|/
| |/| |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
When creating a new remote, contrary to loading one from disk,
active_refspecs was not populated. This means that if using the new
remote to push, git_push_update_tips() will be a no-op since it
checks the refspecs passed during the push against the base ones
i.e. active_refspecs. And therefore the local refs won't be created
or updated after the push operation.
|
|\ \ \ \
| | | | |
| | | | | |
push: use the common refspec parser
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
There is one well-known and well-tested parser which we should use,
instead of implementing parsing a second time.
The common parser is also augmented to copy the LHS into the RHS if the
latter is empty.
The expressions test had to change a bit, as we now catch a bad RHS of a
refspec locally.
|
|\ \ \ \ \
| |_|/ / /
|/| | | | |
Fixed a couple Clang warnings
|
| | |/ /
| |/| | |
|
| | | | |
|
|\ \ \ \ |
|
| | | | | |
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Fixed git2.h not including threads.h anymore
|
| |/ / / / |
|
|\ \ \ \ \
| |/ / / /
|/| | | | |
Fix typo in THREADING.md
|
|/ / / / |
|
|\ \ \ \
| | | | |
| | | | | |
Add test information to contributing guidelines
|
| | | | | |
|
| | |_|/
| |/| |
| | | |
| | | | |
Also various formatting, wrapping and capitalization tweaks.
|
|\ \ \ \
| |_|/ /
|/| | | |
Rename git_threads_ to git_libgit2_
|
|/ / /
| | |
| | |
| | |
| | |
| | | |
This describes their purpose better, as we now initialize ssl and some
other global stuff in there. Calling the init function is not something
which has been optional for a while now.
|
|\ \ \
| | | |
| | | | |
Fixed GIT_REMOTE_DOWNLOAD_TAGS_ALL to behave like git 1.9.0+
|
|/ / / |
|
|\ \ \
| | | |
| | | | |
Refactor fetchhead
|
| | | |
| | | |
| | | |
| | | | |
This is an ugly chunk of code, so let's put it into its own function.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
If the remote is anonymous, then we cannot check for any configuration,
as there is no name. Check for this before we try to use the name, which
may be a NULL pointer.
This fixes #2697.
|
| | | |
| | | |
| | | |
| | | |
| | | | |
This reduces the clutter somewhat and lets us see what we're asking
about the reference.
|
| | | |
| | | |
| | | |
| | | | |
This gets the value from branch.<foo>.remote.
|
|\ \ \ \
| | | | |
| | | | | |
remote: rename _load() to _lookup()
|
| |/ / /
| | | |
| | | |
| | | | |
This brings it in line with the rest of the lookup functions.
|
|\ \ \ \
| | | | |
| | | | | |
odb: hardcode the empty blob and tree
|
| |/ / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
git hardocodes these as objects which exist regardless of whether they
are in the odb and uses them in the shell interface as a way of
expressing the lack of a blob or tree for one side of e.g. a diff.
In the library we use each language's natural way of declaring a lack of
value which makes a workaround like this unnecessary. Since git uses it,
it does however mean each shell application would need to perform this
check themselves.
This makes it common work across a range of applications and an issue
with compatibility with git, which fits right into what the library aims
to provide.
Thus we introduce the hard-coded empty blob and tree in the odb
frontend. These hard-coded objects are checked for before going to the
backends, but after the cache check, which means the second time they're
used, they will be treated as normal cached objects instead of creating
new ones.
|
|\ \ \ \
| |/ / /
|/| | | |
git_status_file now takes an exact path.
|
|/ / /
| | |
| | |
| | |
| | |
| | | |
This function has one output but can match multiple files, which can be
unexpected for the user, which would usually path the exact path of the
file he wants the status of.
|
|\ \ \
| | | |
| | | | |
submodules: stale module entries
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
We cannot know from looking at .gitmodules whether a directory is a
submodule or not. We need the index or tree we are comparing against to
tell us. Otherwise we have to assume the entry in .gitmodules is stale
or otherwise invalid.
Thus we pass the index of the repository into the workdir iterator, even
if we do not want to compare against it. This follows what git does,
which even for `git diff <tree>`, it will consider staged submodules as
such.
|