- 22 Nov, 2014 1 commit
-
-
There are some combination of objects and target types which we know cannot be fulfilled. Return EINVALIDSPEC for those to signify that there is a mismatch in the user-provided data and what the object model is capable of satisfying. If we start at a tag and in the course of peeling find out that we cannot reach a particular type, we return EPEEL.
Carlos Martín Nieto committed
-
- 06 May, 2014 1 commit
-
-
The brace in the check for peel's return was surrounding the wrong thing, which made 'error' be set to 1 when there was an error instead of the error code.
Carlos Martín Nieto committed
-
- 05 Mar, 2014 1 commit
-
-
This finds a short id string that will unambiguously select the given object, starting with the core.abbrev length (usually 7) and growing until it is no longer ambiguous.
Russell Belfer committed
-
- 25 Feb, 2014 1 commit
-
-
Edward Thomson committed
-
- 28 Oct, 2013 1 commit
-
-
Ben Straub committed
-
- 16 Sep, 2013 1 commit
-
-
Ben Straub committed
-
- 11 May, 2013 1 commit
-
-
Linquize committed
-
- 02 May, 2013 1 commit
-
-
Russell Belfer committed
-
- 01 May, 2013 1 commit
-
-
Russell Belfer committed
-
- 22 Apr, 2013 6 commits
-
-
This unifies the object parse functions into one signature that takes an odb_object.
Russell Belfer committed -
This adds create and free callback to the git_objects_table so that more of the creation and destruction of objects can be table driven instead of using switch statements. This also makes the semantics of certain object creation functions consistent so that we can make better use of function pointers. This also fixes a theoretical error case where an object allocation fails and we end up storing NULL into the cache.
Russell Belfer committed -
Vicent Marti committed
-
Vicent Marti committed
-
Vicent Marti committed
-
Vicent Marti committed
-
- 10 Apr, 2013 1 commit
-
-
Vicent Marti committed
-
- 08 Jan, 2013 1 commit
-
-
Edward Thomson committed
-
- 01 Dec, 2012 1 commit
-
-
nulltoken committed
-
- 29 Nov, 2012 1 commit
-
-
Philip Kelley committed
-
- 28 Nov, 2012 2 commits
-
-
Philip Kelley committed
-
Vicent Marti committed
-
- 27 Nov, 2012 1 commit
-
-
Conflicts: src/branch.c tests-clar/refs/branches/create.c
Vicent Marti committed
-
- 22 Nov, 2012 1 commit
-
-
nulltoken committed
-
- 10 Sep, 2012 1 commit
-
-
Often `git_odb_read_header` will "fail" and have to read the entire object into memory instead of just the header. When this happens, the object is loaded and then disposed of immediately, which makes it difficult to efficiently use the header information to decide if the object should be loaded (since attempting to do so will often result in loading the object twice). This commit takes the existing code and reorganizes it to have two new functions: - `git_odb__read_header_or_object` which acts just like the old read header function except that it returns the object, too, if it was forced to load the whole thing. It then becomes the callers responsibility to free the `git_odb_object`. - `git_object__from_odb_object` which was extracted from the old `git_object_lookup` and creates a subclass of `git_object` from an existing `git_odb_object` (separating the ODB lookup from the `git_object` creation). This allows you to use the first header reading function efficiently without instantiating the `git_odb_object` twice. There is no net change to the behavior of any of the existing functions, but this allows internal code to tap into the ODB lookup and object creation to be more efficient.
Russell Belfer committed
-
- 27 Aug, 2012 1 commit
-
-
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`.
Russell Belfer committed
-
- 24 Jul, 2012 1 commit
-
-
nulltoken committed
-
- 17 Jul, 2012 1 commit
-
-
Partially fix #530
nulltoken committed
-
- 21 Jun, 2012 1 commit
-
-
Michael Schubert committed
-
- 17 May, 2012 2 commits
-
-
Vicent Martí committed
-
Vicent Martí committed
-
- 11 May, 2012 1 commit
-
-
object: make git_object_lookup() return GIT_ENOTFOUND when searching for an existing object by specifying an incorrect type This fix complements cb0ce16b and cover the following additional use cases - retrieving an object which has been previously searched, found and cached - retrieving an object through an non ambiguous abbreviated id
nulltoken committed
-
- 08 May, 2012 1 commit
-
-
object: make git_object_lookup() return GIT_ENOTFOUND when searching for an existing object by specifying an incorrect type
nulltoken committed
-
- 04 May, 2012 1 commit
-
-
There are three changes here: - correctly propogate error code from failed object lookups - make zlib inflate use our allocators - add OID to notfound error in ODB lookups
Russell Belfer committed
-
- 03 May, 2012 2 commits
-
-
Depending on the operation, we need to consider gitattributes in both the work dir and the index. This adds a parameter to all of the gitattributes related functions that allows user control of attribute reading behavior (i.e. prefer workdir, prefer index, only use index). This fix also covers allowing us to check attributes (and hence do diff and status) on bare repositories. This was a somewhat larger change that I hoped because it had to change the cache key used for gitattributes files.
Russell Belfer committed -
Vicent Martí committed
-
- 26 Apr, 2012 1 commit
-
-
Carlos Martín Nieto committed
-
- 13 Mar, 2012 1 commit
-
-
This migrates odb.c, odb_loose.c, odb_pack.c and pack.c to the new style of error handling. Also got the unix and win32 versions of map.c. There are some minor changes to other files but no others were completely converted. This also contains an update to filebuf so that a zeroed out filebuf will not think that the fd (== 0) is actually open (and inadvertently call close() on fd 0 if cleaned up). Lastly, this was built and tested on win32 and contains a bunch of fixes for the win32 build which was pretty broken.
Russell Belfer committed
-
- 13 Feb, 2012 1 commit
-
-
Signed-off-by: schu <schu-github@schulog.org>
schu committed
-
- 26 Nov, 2011 2 commits
-
-
There's no difference between `_free` and `_close` semantics: keep everything with the same name to avoid confusions.
Vicent Marti committed -
The ownership semantics have been changed all over the library to be consistent. There are no more "borrowed" or duplicated references. Main changes: - `git_repository_open2` and `3` have been dropped. - Added setters and getters to hotswap all the repository owned objects: `git_repository_index` `git_repository_set_index` `git_repository_odb` `git_repository_set_odb` `git_repository_config` `git_repository_set_config` `git_repository_workdir` `git_repository_set_workdir` Now working directories/index files/ODBs and so on can be hot-swapped after creating a repository and between operations. - All these objects now have proper ownership semantics with refcounting: they all require freeing after they are no longer needed (the repository always keeps its internal reference). - Repository open and initialization has been updated to keep in mind the configuration files. Bare repositories are now always detected, and a default config file is created on init. - All the tests affected by these changes have been dropped from the old test suite and ported to the new one.
Vicent Marti committed
-