- 27 Nov, 2012 1 commit
-
-
Ben Straub committed
-
- 27 Sep, 2012 1 commit
-
-
Fixes #921.
Michael Schubert committed
-
- 09 Sep, 2012 1 commit
-
-
Sascha Cunz committed
-
- 05 Sep, 2012 1 commit
-
-
This refactors the diff output code so that an iterator object can be used to traverse and generate the diffs, instead of just the `foreach()` style with callbacks. The code has been rearranged so that the two styles can still share most functions. This also replaces `GIT_REVWALKOVER` with `GIT_ITEROVER` and uses that as a common error code for marking the end of iteration when using a iterator style of object.
Russell Belfer committed
-
- 27 Aug, 2012 1 commit
-
-
Check the type of the pushed object immediately instead of starting the walk and failing in between.
Michael Schubert committed
-
- 11 Jul, 2012 1 commit
-
-
nulltoken committed
-
- 22 Jun, 2012 1 commit
-
-
nulltoken committed
-
- 11 Jun, 2012 1 commit
-
-
Russell Belfer committed
-
- 07 Jun, 2012 1 commit
-
-
nulltoken committed
-
- 17 May, 2012 2 commits
-
-
Vicent Martí committed
-
Vicent Martí committed
-
- 15 May, 2012 1 commit
-
-
From the description of git_revwalk_reset in revwalk.h the function should clear all pushed and hidden commits, and leave the walker in a blank state (just like at creation). Apparently everything gets reseted appart of pushed commits (walk->one and walk->twos) This fix should reset the walker properly.
Nico von Geyso committed
-
- 03 May, 2012 1 commit
-
-
Vicent Martí committed
-
- 26 Apr, 2012 1 commit
-
-
Russell Belfer committed
-
- 25 Apr, 2012 4 commits
-
-
This renamed `git_khash_str` to `git_strmap`, `git_hash_oid` to `git_oidmap`, and deletes `git_hashtable` from the tree, plus adds unit tests for `git_strmap`.
Russell Belfer committed -
This updates khash.h with some extra features (like error checking on allocations, ability to use wrapped malloc, foreach calls, etc), creates two high-level wrappers around khash: `git_khash_str` and `git_khash_oid` for string-to-void-ptr and oid-to-void-ptr tables, then converts all of the old usage of `git_hashtable` over to use these new hashtables. For `git_khash_str`, I've tried to create a set of macros that yield an API not too unlike the old `git_hashtable` API. Since the oid hashtable is only used in one file, I haven't bother to set up all those macros and just use the khash APIs directly for now.
Russell Belfer committed -
This removes the custom paged allocator from revwalk and replaces it with a `git_pool`.
Russell Belfer committed -
In the case that walk->one is NULL, we know that we have no positive references, so we already know that the revwalk is over.
Carlos Martín Nieto committed
-
- 23 Apr, 2012 1 commit
-
-
Russell Belfer committed
-
- 17 Apr, 2012 2 commits
-
-
This fixes all the warnings on win64 except those in deps, which come from the regex code.
Russell Belfer committed -
Adds a new public reference function `git_reference_lookup_oid` that directly resolved a reference name to an OID without returning the intermediate `git_reference` object (hence, no free needed). Internally, this adds a `git_reference_lookup_resolved` function that combines looking up and resolving a reference. This allows us to be more efficient with memory reallocation. The existing `git_reference_lookup` and `git_reference_resolve` are reimplmented on top of the new utility and a few places in the code are changed to use one of the two new functions.
Russell Belfer committed
-
- 12 Apr, 2012 7 commits
-
-
Carlos Martín Nieto committed
-
Carlos Martín Nieto committed
-
As parents are older than their children, we're appending to the commit list most of the time, which makes an ordered linked list quite inefficient. While we're there, don't sort the results list in the main loop, as we're sorting them afterwards and it creates extra work.
Carlos Martín Nieto committed -
There is no need walk down the parents of a merge base to mark them as uninteresting because we'll never see them. Calculate the merge bases in prepare_walk() so mark_uninteresting() can stop at a merge base instead of walking all the way to the root.
Carlos Martín Nieto committed -
It's implemented in revwalk.c so it has access to the revision walker's commit cache and related functions. The algorithm is the one used by git, modified so it fits better with the library's functions.
Carlos Martín Nieto committed -
The code was already there, so factor it out and let users push an OID by giving it a reference name. Only refs to commits are supported. Annotated tags will throw an error.
Carlos Martín Nieto committed -
Carlos Martín Nieto committed
-
- 02 Mar, 2012 1 commit
-
-
It turns out that commit 31e9cfc4cbcaf1b38cdd3dbe3282a8f57e5366a5 did not fix the GIT_USUSED behavior on all platforms. This commit walks through and really cleans things up more thoroughly, getting rid of the unnecessary stuff. To remove the use of some GIT_UNUSED, I ended up adding a couple of new iterators for hashtables that allow you to iterator just over keys or just over values. In making this change, I found a bug in the clar tests (where we were doing *count++ but meant to do (*count)++ to increment the value). I fixed that but then found the test failing because it was not really using an empty repo. So, I took some of the code that I wrote for iterator testing and moved it to clar_helpers.c, then made use of that to make it easier to open fixtures on a per test basis even within a single test file.
Russell Belfer committed
-
- 27 Feb, 2012 2 commits
-
-
It's not unusual to want the walker to act on HEAD, so add a convencience function for the case that the user doesn't already have a resolved HEAD reference.
Carlos Martín Nieto committed -
git_revwalk_{push,hide}_glob() lets you push the OIDs of references that match the specified glob. This is the basics for what git.git does with the rev-list options --branches, --tags, --remotes and --glob.
Carlos Martín Nieto committed
-
- 13 Feb, 2012 1 commit
-
-
Signed-off-by: schu <schu-github@schulog.org>
schu committed
-
- 07 Feb, 2012 1 commit
-
-
Not doing so hides commits we want to get at during a second walk.
Carlos Martín Nieto 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
-
- 29 Oct, 2011 1 commit
-
-
Ensure that all memory related functions (malloc, calloc, strdup, free, etc) are using their respective `git__` wrappers.
Vicent Marti committed
-
- 22 Sep, 2011 1 commit
-
-
Should fix issue #419. Signed-off-by: nulltoken <emeric.fermas@gmail.com>
nulltoken committed
-
- 18 Sep, 2011 1 commit
-
-
1. The license header is technically not valid if it doesn't have a copyright signature. 2. The COPYING file has been updated with the different licenses used in the project. 3. The full GPLv2 header in each file annoys me.
Vicent Marti committed
-
- 30 Aug, 2011 1 commit
-
-
Signed-off-by: Kirill A. Shutemov <kirill@shutemov.name>
Kirill A. Shutemov committed
-
- 25 Aug, 2011 1 commit
-
-
There is no need in STRLEN macros. Compilers can do this trivial optimization on its own. Signed-off-by: Kirill A. Shutemov <kirill@shutemov.name>
Kirill A. Shutemov committed
-