summaryrefslogtreecommitdiff
path: root/include/git2/tree.h
Commit message (Collapse)AuthorAgeFilesLines
* errors: Rename error codesbreaking-changesVicent Martí2012-05-181-1/+1
|
* errors: Rename the generic return codesVicent Martí2012-05-181-9/+8
|
* tree: Naming conventionsVicent Martí2012-05-161-1/+1
|
* tree: Kill the `git_tree_diff` functionsVicent Martí2012-05-161-34/+0
| | | | These are deprecated and replaced with the diffing code in git2/diff.h
* Add missing GIT_EXTERN declarationsSascha Cunz2012-05-141-2/+2
|
* Revert GIT_STATUS constants to avoid issuesRussell Belfer2012-03-021-6/+0
| | | | | | | | | This reverts the changes to the GIT_STATUS constants and adds a new enumeration to describe the type of change in a git_diff_delta. I don't love this solution, but it should prevent strange errors from occurring for now. Eventually, I would like to unify the various status constants, but it needs a larger plan and I just wanted to eliminate this breakage quickly.
* Clean up diff implementation for reviewRussell Belfer2012-03-021-4/+5
| | | | | | | This fixes several bugs, updates tests and docs, eliminates the FILE* assumption in favor of printing callbacks for the diff patch formatter helpers, and adds a "diff" example function that can perform a diff from the command line.
* Implement diff lists and formattersRussell Belfer2012-03-021-0/+5
| | | | | | | | This reworks the diff API to separate the steps of producing a diff descriptions from formatting the diff. This will allow us to share diff output code with the various diff creation scenarios and will allow us to implement rename detection as an optional pass that can be run on a diff list.
* Update Copyright headerschu2012-02-131-1/+1
| | | | Signed-off-by: schu <schu-github@schulog.org>
* tree: recursive diff-indexVicent Marti2011-12-031-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk> Signed-off-by: Vicent Marti <tanoku@gmail.com> # Please enter the commit message for your changes. Lines starting # with '#' will be ignored, and an empty message aborts the commit. # # Author: Carlos Martín Nieto <carlos@cmartin.tk> # # On branch development # Your branch is ahead of 'origin/development' by 11 commits. # # Changes to be committed: # (use "git reset HEAD^1 <file>..." to unstage) # # modified: include/git2/tree.h # modified: src/tree.c # modified: tests-clay/clay_main.c # modified: tests-clay/object/tree/diff.c # # Untracked files: # (use "git add <file>..." to include in what will be committed) # # 0001-remote-Cleanup-the-remotes-code.patch # 466.patch # 466.patch.1 # 488.patch # Makefile # libgit2.0.15.0.dylib # libgit2.0.dylib # libgit2.dylib # libgit2_clay # libgit2_test # tests-clay/object/tree/
* tree: implement tree diffingCarlos Martín Nieto2011-12-031-0/+34
| | | | | | | | For each difference in the trees, the callback gets called with the relevant information so the user can fill in their own data structures. Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
* Rename all `_close` methodsVicent Marti2011-11-261-4/+4
| | | | | There's no difference between `_free` and `_close` semantics: keep everything with the same name to avoid confusions.
* tree: Fix documentationVicent Marti2011-11-221-1/+2
|
* tree: Add payload to `git_tree_walk`Vicent Marti2011-11-181-2/+2
|
* Rename `git_tree_frompath` to `git_tree_get_subtree`Vicent Marti2011-11-181-7/+7
| | | | That makes more sense to me.
* tree: Add traversal in post-orderVicent Marti2011-10-271-0/+30
|
* tree: Fix name lookups once and for allVicent Marti2011-10-201-6/+0
| | | | Double-pass binary search. Jeez.
* tree: Fix lookups by entry nameVicent Marti2011-10-191-0/+6
|
* tree: Add git_tree_frompath() which, given a relative path to a tree entry, ↵nulltoken2011-10-131-0/+14
| | | | retrieves the tree object containing this tree entry
* Cleanup legal dataVicent Marti2011-09-191-22/+4
| | | | | | | | | | 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.
* Standardized doxygen @return lines for int functions to say "GIT_SUCCESS or ↵David Boyce2011-09-131-6/+6
| | | | an error code".
* cleanup: remove trailing spacesKirill A. Shutemov2011-07-011-1/+1
| | | | Signed-off-by: Kirill A. Shutemov <kirill@shutemov.name>
* Merge pull request #240 from Romain-Geissler/tree-object-typeVicent Martí2011-06-061-0/+8
|\ | | | | Tree: Added a function that returns the type of a tree entry.
| * Tree: Added a function that returns the type of a tree entry.Romain Geissler2011-06-061-0/+8
| |
* | Merge pull request #239 from pegonma/oid_prefixVicent Martí2011-06-061-0/+17
|\ \ | | | | | | Search objects of different types given OID prefix
| * | Added methods to search objects of different typesMarc Pegon2011-06-061-0/+17
| |/ | | | | | | given an OID prefix.
* | Tree: API uniformasation: Use unsigned int for all index number.Romain Geissler2011-06-051-2/+2
|/
* Build & write custom trees in memoryVicent Marti2011-04-041-6/+111
|
* Fix the git_tree_write implementationVicent Marti2011-04-041-10/+16
|
* New external API method: `git_tree_create`Sarath Lakshman2011-04-031-0/+12
| | | | | Creates a tree by scanning the index file. The method handles recursive creation of trees for subdirectories and adds them to the parent tree.
* Do not return on `void` helper methodsVicent Marti2011-03-231-1/+1
| | | | MSVC doesn't swallow that.
* Add close wappers for commit, tree, tag and blobCarlos Martín Nieto2011-03-231-0/+18
| | | | | | | | In the same spirit that git_repository_lookup is no longer available, add wrappers so the users don't have to cast when closing their objects. Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
* I broke your bindingsVicent Marti2011-03-201-107/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Hey. Apologies in advance -- I broke your bindings. This is a major commit that includes a long-overdue redesign of the whole object-database structure. This is expected to be the last major external API redesign of the library until the first non-alpha release. Please get your bindings up to date with these changes. They will be included in the next minor release. Sorry again! Major features include: - Real caching and refcounting on parsed objects - Real caching and refcounting on objects read from the ODB - Streaming writes & reads from the ODB - Single-method writes for all object types - The external API is now partially thread-safe The speed increases are significant in all aspects, specially when reading an object several times from the ODB (revwalking) and when writing big objects to the ODB. Here's a full changelog for the external API: blob.h ------ - Remove `git_blob_new` - Remove `git_blob_set_rawcontent` - Remove `git_blob_set_rawcontent_fromfile` - Rename `git_blob_writefile` -> `git_blob_create_fromfile` - Change `git_blob_create_fromfile`: The `path` argument is now relative to the repository's working dir - Add `git_blob_create_frombuffer` commit.h -------- - Remove `git_commit_new` - Remove `git_commit_add_parent` - Remove `git_commit_set_message` - Remove `git_commit_set_committer` - Remove `git_commit_set_author` - Remove `git_commit_set_tree` - Add `git_commit_create` - Add `git_commit_create_v` - Add `git_commit_create_o` - Add `git_commit_create_ov` tag.h ----- - Remove `git_tag_new` - Remove `git_tag_set_target` - Remove `git_tag_set_name` - Remove `git_tag_set_tagger` - Remove `git_tag_set_message` - Add `git_tag_create` - Add `git_tag_create_o` tree.h ------ - Change `git_tree_entry_2object`: New signature is `(git_object **object_out, git_repository *repo, git_tree_entry *entry)` - Remove `git_tree_new` - Remove `git_tree_add_entry` - Remove `git_tree_remove_entry_byindex` - Remove `git_tree_remove_entry_byname` - Remove `git_tree_clearentries` - Remove `git_tree_entry_set_id` - Remove `git_tree_entry_set_name` - Remove `git_tree_entry_set_attributes` object.h ------------ - Remove `git_object_new - Remove `git_object_write` - Change `git_object_close`: This method is now *mandatory*. Not closing an object causes a memory leak. odb.h ----- - Remove type `git_rawobj` - Remove `git_rawobj_close` - Rename `git_rawobj_hash` -> `git_odb_hash` - Change `git_odb_hash`: New signature is `(git_oid *id, const void *data, size_t len, git_otype type)` - Add type `git_odb_object` - Add `git_odb_object_close` - Change `git_odb_read`: New signature is `(git_odb_object **out, git_odb *db, const git_oid *id)` - Change `git_odb_read_header`: New signature is `(size_t *len_p, git_otype *type_p, git_odb *db, const git_oid *id)` - Remove `git_odb_write` - Add `git_odb_open_wstream` - Add `git_odb_open_rstream` odb_backend.h ------------- - Change type `git_odb_backend`: New internal signatures are as follows int (* read)(void **, size_t *, git_otype *, struct git_odb_backend *, const git_oid *) int (* read_header)(size_t *, git_otype *, struct git_odb_backend *, const git_oid *) int (* writestream)(struct git_odb_stream **, struct git_odb_backend *, size_t, git_otype) int (* readstream)( struct git_odb_stream **, struct git_odb_backend *, const git_oid *) - Add type `git_odb_stream` - Add enum `git_odb_streammode` Signed-off-by: Vicent Marti <tanoku@gmail.com>
* Change interface for Tree Index attr (always unsigned)Vicent Marti2011-03-051-1/+2
| | | | Signed-off-by: Vicent Marti <tanoku@gmail.com>
* Check for valid range of attributes for tree entrySakari Jokinen2011-03-051-1/+1
|
* Move the external includes folder from `src` to `include`Vicent Marti2011-03-031-0/+222
Signed-off-by: Vicent Marti <tanoku@gmail.com>