| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is the last minor release before 1.0preview1.
Highlights of this release include:
- Branch API
- Checkout head, index and tree
- Finished clone support
- Abstracted reference API to use custom backends
- Full diff support
- New (faster) packbuilder
- Push support
- New Remotes API
- Revparse support (single and range commits)
- Stash support
- Submodules support
As always, the full changelog is available at:
http://libgit2.github.com/libgit2/#p/changelog
Yeah, it's a huge release. Releasing stuff sucks.
Expect 1.0 and API freeze in less than a month.
Your faithful maintainer,
vmg
Signed-off-by: Vicent Marti <tanoku@gmail.com>
|
| |
|
| |
|
| |
|
|\ |
|
| | |
|
| |
| |
| |
| | |
This will probably prevent many lookup/free
operations in calling code.
|
| | |
|
| | |
|
| | |
|
| | |
|
|\ \
| | |
| | | |
Branch upstream configuration
|
| | |
| | |
| | |
| | |
| | | |
Add functions to set and unset the upstream configuration to
complement the getter we already have.
|
| | |
| | |
| | |
| | |
| | | |
The term 'tracking' is overloaded. Help distinguish what we mean by
using 'upstream' for this part of the library.
|
| | | |
|
| |/
|/|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This adds tests for diffs with submodules in them and (perhaps
unsurprisingly) requires further fixes to be made. Specifically,
this fixes:
- when considering if a submodule is dirty in the workdir, it was
being treated as dirty even if only the index was dirty.
- git_diff_patch_to_str (and git_diff_patch_print) were "printing"
the headers for files (and submodules) that were unmodified or
had no meaningful content.
- added comment to previous fix and removed unneeded parens.
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | | |
All the hard work is already in revparse.
Signed-off-by: Greg Price <price@mit.edu>
|
| | |
| | |
| | |
| | | |
Signed-off-by: Greg Price <price@mit.edu>
|
| | |
| | |
| | |
| | | |
Signed-off-by: Greg Price <price@mit.edu>
|
| | | |
|
| | | |
|
| |/
|/| |
|
| | |
|
|\ \
| | |
| | | |
opts: allow configuration of odb cache size
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Currently, the odb cache has a fixed size of 128 slots as defined by
GIT_DEFAULT_CACHE_SIZE. Allow users to set the size of the cache via
git_libgit2_opts().
Fixes #1035.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This option has been sitting unimplemented for a while, so I
finally went through and implemented it along with some tests.
As part of this, I improved the implementation of
GIT_DIFF_IGNORE_SUBMODULES so it be more diligent about avoiding
extra work and about leaving off delta records for submodules to
the greatest extent possible (though it may include them still
if you are request TYPECHANGE records).
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This implements working versions of GIT_DIFF_RECURSE_IGNORED_DIRS
and GIT_STATUS_OPT_RECURSE_IGNORED_DIRS along with some tests for
the newly available behaviors. This is not turned on by default
for status, but can be accessed via the options to the extended
version of the command.
|
|\ \ \
| | | |
| | | | |
Nul terminated oid
|
| | | | |
|
| |/ /
|/| | |
|
|/ /
| |
| |
| |
| | |
Explain it in local-upstream branch terms so it's easier to grasp than
with the `one` and `two` naming from the merge-base code.
|
| | |
|
| |
| |
| |
| |
| | |
Get rid of some dead code, tighten things up a bit, and fix a bug
with core::env test.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This switches the APIs for setting and getting the global/system
search paths from using git_strarray to using a simple string with
GIT_PATH_LIST_SEPARATOR delimited paths, just as the environment
PATH variable would contain. This makes it simpler to get and set
the value.
I also added code to expand "$PATH" when setting a new value to
embed the old value of the path. This means that I no longer
require separate actions to PREPEND to the value.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The goal of this work is to expose the search logic for "global",
"system", and "xdg" files through the git_libgit2_opts() interface.
Behind the scenes, I changed the logic for finding files to have a
notion of a git_strarray that represents a search path and to store
a separate search path for each of the three tiers of config file.
For each tier, I implemented a function to initialize it to default
values (generally based on environment variables), and then general
interfaces to get it, set it, reset it, and prepend new directories
to it.
Next, I exposed these interfaces through the git_libgit2_opts
interface, reusing the GIT_CONFIG_LEVEL_SYSTEM, etc., constants
for the user to control which search path they were modifying.
There are alternative designs for the opts interface / argument
ordering, so I'm putting this phase out for discussion.
Additionally, I ended up doing a little bit of clean up regarding
attr.h and attr_file.h, adding a new attrcache.h so the other two
files wouldn't have to be included in so many places.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Previously, 0 meant default. This is problematic, as asking for 0
context lines is a valid thing to do.
Change GIT_DIFF_OPTIONS_INIT to default to three and stop treating 0
as a magic value. In case no options are provided, make sure the
options in the diff object default to 3.
|
|\ \
| | |
| | | |
Optional tracing back to consumers
|
| | | |
|
| | | |
|
|/ / |
|
| |
| |
| |
| |
| | |
* fixed style issues
* use new iterator functions for git_note_foreach()
|
| | |
|
|/
|
|
|
| |
* git_note_iterator_new() - create a new note iterator
* git_note_next() - retrieves the next item of the iterator
|
| |
|
| |
|
|
|
|
|
|
|
| |
This was the first implementation and its goal was simply to have
something that worked. It is slow and now it's just taking up
space. Remove it and switch the one known usage to use the streaming
indexer.
|
|\
| |
| | |
Add file similarity scoring to diff rename/copy detection
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This adds some new tests that actually exercise the similarity
metric between files to detect renames, copies, and split modified
files that are too heavily modified.
There is still more testing to do - these tests are just partially
covering the cases.
There is also one bug fix in this where a change set with only
MODIFY being broken into ADD/DELETE (due to low self-similarity)
without any additional RENAMED entries would end up not processing
the split requests (because the num_rewrites counter got reset).
|