| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Inside of our networking example code, we have a git2 executable
that acts as an entry point to all the different network
examples. As such, it is kind of the same like the normal git(1)
executable in that it simply arbitrates to the respective
subcommands.
Let's extend this approach and merge all examples into a single
standalone lg2 executable. Instead of building an executable
for all the existing examples we have, we now bundle them all
inside of the lg2 one and let them be callable via subcommands.
In the process, we can get rid of duplicated library
initialization, deinitialization and repository discovery code.
Instead of having each subcommand handle these on its own, we
simply do it inside of the single main function now.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Right now, we have two sets of "common" code, one containing
general common code and one containing network common code. As we
intend to get rid of the network subdirectory and instead merge
all examples into a single standalone executable, this
distinction doesn't make a lot of sense now. Furthermore, the
common network code is not that big.
Let's get rid of the common network code by merging it into the
general common code.
|
| | |
|
| |
|
|
|
|
|
|
|
| |
C++ style comment ("//") are not specified by the ISO C90 standard and
thus do not conform to it. While libgit2 aims to conform to C90, we did
not enforce it until now, which is why quite a lot of these
non-conforming comments have snuck into our codebase. Do a tree-wide
conversion of all C++ style comments to the supported C style comments
to allow us enforcing strict C90 compliance in a later commit.
|
| |
|
| |
Format of a length of string to the correct format is:%.*s
|
| | |
|
| |
|
|
|
| |
This lets us see what the server (or libgit2 locally) is doing, rather
than having to stare at a non-moving screen.
|
| | |
|
| | |
|
| |
|
|
|
| |
Local transports don't have data about the size, avoid dividing by
zero in the callback.
|
| | |
|
| |
|
|
|
|
| |
- added MSVC cmake definitions to disable warnings
- general.c is rewritten so it is ansi-c compatible and compiles ok on microsoft windows
- some MSVC reported warning fixes
|
| |\
| |
| | |
Add support for thin packs
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The user is unable to derive the number of deltas in the pack, as that
would require them to capture the stats exactly in the moment between
download and final processing, which is abstracted away in the fetch.
Capture these numbers for the user and expose them in the progress
struct. The clone and fetch examples now also present this information
to the user.
|
| | |
| |
| |
| | |
There's no need for this to be a pointer to somewhere else.
|
| | |
| |
| |
| |
| | |
Move this one as well, letting us have a single way of setting the
callbacks for the remote, and removing fields from the clone options.
|
| |/
|
|
|
|
| |
The text progress and update_tips callbacks are already part of the
struct, which was meant to unify the callback setup, but the download
one was left out.
|
| | |
|
| |
|
|
|
|
| |
Martin Pool was the original author of the code referenced in the clone
example. Make note that he's given his permission and also give him the
proper credit.
|
| |
|
|
|
| |
This works by having the indexer watch the return
code of the callback, so will only take effect
on object boundaries.
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
| |
This fixes a number of warnings and problems with cross-platform
builds. Among other things, it's not safe to name a member of a
structure "strcmp" because that may be #defined.
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
| |
The fetch code takes advantage of this to implement a
progress callback every 100kb of transfer.
|
| | |
|
| |
|
|
| |
Also implemented in the git2 example.
|
| | |
|
| | |
|
| | |
|
| |
|