src


Log

Author Commit Date CI Message
Carlos Martín Nieto 6782245e 2012-07-21T16:24:13 repo: add git_repository_wrap_odb() to wrap an ODB Primarily useful when used together with git_odb_backend_one_pack().
Carlos Martín Nieto 507523c3 2012-07-21T16:23:49 odb: allow creating an ODB backend from a packfile index git_odb_backend_one_packfile() allows us to create an ODB backend out of an .idx file.
Russell Belfer 71d27358 2012-07-19T10:23:45 Fix bug with merging diffs with null options A diff that is created with a NULL options parameter could result in a NULL prefix string, but diff merge was unconditionally strdup'ing it. I added a test to replicate the issue and then a new method that does the right thing with NULL values.
Michael Schubert 6fc0bdc5 2012-07-17T10:52:16 Remove old error handling code
Vicent Marti 227f3131 2012-07-15T14:11:58 attr: Rename the `git_attr__` exports Pevents collisions with the original libgit, which also exports those exact symbols. Fixes #822
Carlos Martín Nieto d1af70b0 2012-07-13T20:43:56 indexer: delay resolving deltas Not all delta bases are available on the first try. By delaying resolving all deltas until the end, we avoid decompressing some of the data twice or even more times, saving effort and time.
Carlos Martín Nieto 7b8c9e12 2012-07-13T20:46:16 pkt: correctly advertise capabilitites The correct way to advertise out capabilities is by appending them to the first 'want' line, using SP as separator, instead of NUL as the server does. Inconsistent documentation lead to the use of NUL in libgit2. Fix this so we can request much more efficient packs from the remote which reduces the indexing time considerably.
Vicent Martí 0848ec24 2012-07-13T06:56:24 Merge pull request #815 from nulltoken/topic/revparse-refac More revparse <3
nulltoken 151d81a6 2012-07-12T22:03:28 refs: fix a memory leak
nulltoken b5f90115 2012-07-12T22:31:53 revparse: fix propagation of error
nulltoken 5a6f31f2 2012-07-12T13:20:29 revparse: only allow decimal specifiers in carete and tilde synatx passing 0 to git_strol(32|64) let the implementation guess if it's dealing with an octal number or a decimal one. Let's make it safe and ensure that both 'HEAD@{010}' and 'HEAD@{10}' point at the same commit.
nulltoken d1b7921a 2012-07-12T11:46:20 revparse: fix disambiguation of refs and abbrev oids
nulltoken bb89cf94 2012-07-12T10:57:31 revparse: simplify handling of the colon syntax
nulltoken dc1f4b32 2012-07-12T10:52:19 tree: unfound tree entry returns GIT_ENOTFOUND
nulltoken 1c3edb30 2012-07-12T09:46:45 tree: prevent git_tree_entry_free() from segfaulting when being passed a NULL tree_entry
Russell Belfer 39b8e047 2012-07-12T11:52:10 Missed a couple of khash inline dependencies
Russell Belfer 72ee0787 2012-07-12T11:48:12 Isolate khash inlines from global namespace khash.h was globally #define'ing "inline" which messes with other files. Let's keep it as "kh_inline".
Carlos Martín Nieto b7158c53 2012-07-12T20:48:46 Use GIT_INLINE instead of inline
Vicent Martí dd4345b4 2012-07-12T09:42:54 Merge pull request #789 from carlosmn/odb-foreach odb: add git_odb_foreach()
Vicent Martí 0cf6b2f2 2012-07-12T09:37:09 Merge pull request #805 from nulltoken/fix/revwalk-email-parsing Fix revwalk email parsing
Vicent Martí db2d4061 2012-07-12T09:35:35 Merge pull request #814 from nulltoken/topic/revparse-refac Revparse refactoring: a start
Vicent Martí 48bcf81d 2012-07-12T09:32:44 Merge pull request #812 from arrbee/assorted-tweaks Assorted goodies
nulltoken 12595ab8 2012-07-12T00:52:01 revparse: deploy git_reference_remote_tracking_from_branch()
nulltoken 84f18e35 2012-07-12T00:44:07 refs: introduce git_reference_remote_tracking_from_branch()
nulltoken 2d012c0c 2012-07-11T16:52:02 revparse: deploy git_commit_nth_gen_ancestor()
nulltoken b1aca6ea 2012-07-11T16:14:12 commit: introduce git_commit_nth_gen_ancestor()
nulltoken 2b92a154 2012-07-11T11:20:20 commit: reduce code duplication
nulltoken 8f17ed80 2012-07-10T20:52:56 revparse: simplify the parsing of described object
nulltoken 8aedf1d5 2012-07-05T17:02:03 signature: prevent angle bracket usage in identity
nulltoken 118cf57d 2012-07-04T16:06:07 revwalk: relax the parsing of the commit time
Vicent Martí a13a30ac 2012-07-11T05:29:51 Merge pull request #801 from nulltoken/fix/ref-renaming refs and revparse love <3
Russell Belfer 54e29b93 2012-07-10T23:51:32 Fix missing NUL termination of buffer
Russell Belfer 991a56c7 2012-07-10T15:35:38 Add flag to write gitlink on setting repo workdir This added a flag to the `git_repository_set_workdir()` function that enables generation of a `.git` gitlink file that links the new workdir to the parent repository. Essentially, the flag tells the function to write out the changes to disk to permanently set the workdir of the repository to the new path. If you pass this flag as true, then setting the workdir to something other than the default workdir (i.e. the parent of the .git repo directory), will create a plain file named ".git" with the standard gitlink contents "gitdir: <repo-path>", and also update the "core.worktree" and "core.bare" config values. Setting the workdir to the default repo workdir will clear the core.worktree flag (but still permanently set core.bare to false). BTW, the libgit2 API does not currently provide a function for clearing the workdir and converting a non-bare repo into a bare one.
Russell Belfer b3ff1dab 2012-07-10T15:22:39 Adding git_config_foreach_match() iteration fn Adding a new config iteration function that let's you iterate over just the config entries that match a particular regular expression. The old foreach becomes a simple use of this with an empty pattern. This also fixes an apparent bug in the existing `git_config_foreach` where returning a non-zero value from the iteration callback was not correctly aborting the iteration and the returned value was not being propogated back to the caller of foreach. Added to tests to cover all these changes.
Russell Belfer c3a875c9 2012-07-10T15:20:08 Adding unicode space to match crlf patterns Adding 0x85 to `git__isspace` since we also look for that in filter.c as a whitespace character.
Russell Belfer b0fe1129 2012-07-10T15:13:30 Add path utilities to resolve relative paths This makes it easy to take a buffer containing a path with relative references (i.e. .. or . path segments) and resolve all of those into a clean path. This can be applied to URLs as well as file paths which can be useful. As part of this, I made the drive-letter detection apply on all platforms, not just windows. If you give a path that looks like "c:/..." on any platform, it seems like we might as well detect that as a rooted path. I suppose if you create a directory named "x:" on another platform and want to use that as the beginning of a relative path under the root directory of your repo, this could cause a problem, but then it seems like you're asking for trouble.
Russell Belfer 039fc406 2012-07-10T15:10:14 Add a couple of useful git_buf utilities * `git_buf_rfind` (with tests and tests for `git_buf_rfind_next`) * `git_buf_puts_escaped` and `git_buf_puts_escaped_regex` (with tests) to copy strings into a buffer while injecting an escape sequence (e.g. '\') in front of particular characters.
Russell Belfer 4d3a7b78 2012-07-10T21:45:16 Merge pull request #793 from libgit2/tree-entry-by-path Bring back `entry_bypath`
Russell Belfer 19017a24 2012-07-10T16:24:17 Merge pull request #797 from yorah/fix/inter-hunk-context diff: make inter-hunk-context default value git-compliant
nulltoken 3e82d6c6 2012-07-07T08:25:39 revparse: unfound reference return ENOTFOUND
nulltoken b8460c20 2012-07-06T23:37:44 revparse: do not segfault when retrieving the last entry
nulltoken e7279381 2012-07-06T21:25:42 revparse: fix disambiguation of refs
nulltoken 805c8159 2012-07-06T20:44:17 revparse: unfound previous head return ENOTFOUND
nulltoken 6a5136e5 2012-07-06T12:47:14 revparse: only allow decimal reflog ordinal specs passing 0 to git_strol(32|64) let the implementation guess if it's dealing with an octal number or a decimal one. Let's make it safe and ensure that both 'HEAD@{010}' and 'HEAD@{10}' point at the same commit.
nulltoken 29f72aa6 2012-07-04T22:02:54 revparse: leverage git__isdigit()
nulltoken 98d6a1fd 2012-07-04T16:24:09 util: add git__isdigit()
nulltoken cab65c2b 2012-07-05T22:26:14 revparse: detect incorrect "refname@{-n}" syntax
nulltoken d0a920a6 2012-07-07T10:36:35 refs: deep unfound ref returns ENOTFOUND
nulltoken 5ffd510d 2012-07-04T12:23:03 refs: remove seemingly useless giterr_clear() call
nulltoken 33c33707 2012-07-04T12:20:43 refs: deploy git_reference_has_log()
nulltoken 75261421 2012-07-04T11:58:04 refs: add git_reference_has_log()
nulltoken b6bfd96f 2012-07-03T12:07:33 refs: fix moving of the reflog when renaming a ref
Cyril Roelandt 296f60f5 2012-07-06T00:54:07 Fix libgit2 on GNU/Hurd. On GNU, the d_name field of the dirent structure is defined as "char d_name[1]", so we must allocate more than sizeof(struct dirent) bytes, just like on Sun.
Carlos Martín Nieto 521aedad 2012-06-05T14:48:51 odb: add git_odb_foreach() Go through each backend and list every objects that exists in them. This allows fsck-like uses.
nulltoken 494ae940 2012-07-02T17:51:02 revparse: fix parsing of date specifiers
yorah 29f9186d 2012-07-02T11:18:01 diff: make inter-hunk-context default value git-compliant Default in git core is 0, not 3
nulltoken 52b938d5 2012-06-29T17:06:38 revparse: unfound reflog entry returns ENOTFOUND
nulltoken 08ac23a5 2012-06-29T17:02:29 revparse: unfound reflog ref returns ENOTFOUND
nulltoken 4de89ce7 2012-06-29T16:51:46 revparse: unfound partially-named ref returns ENOTFOUND
Vicent Marti 46ea40d9 2012-06-29T17:08:36 tree: Rename `entry_copy` to `entry_dup`
Vicent Marti 0e2fcca8 2012-06-29T02:21:12 tree: Bring back `entry_bypath` Smaller, simpler, faster.
nulltoken 0e7af9e7 2012-06-28T18:04:01 revparse: unfound nth parent returns ENOTFOUND
nulltoken 0d23c62c 2012-06-28T11:09:16 revparse: handle specs with caret and colon
nulltoken 5b68ba7e 2012-06-27T17:27:38 revparse: unfound treepath returns ENOTFOUND
nulltoken faaa7c51 2012-06-27T16:51:19 revparse: return trees through the "colon" syntax
nulltoken e28dd29b 2012-06-28T07:50:16 revparse: replace spaces with tabs
Carlos Martin Nieto 1d8943c6 2012-06-28T12:05:49 mwindow: allow memory-window files to deregister Once a file is registered, there is no way to deregister it, even after the structure that contains it is no longer needed and has been freed. This may be the source of #624. Allow and use the deregister function to remove our file from the global list.
Carlos Martín Nieto 37159957 2012-06-28T09:33:08 indexer: don't use '/objects/pack/' unconditionally Not everyone who indexes a packfile wants to put it in the standard git repository location.
Vicent Martí ed754a75 2012-06-25T23:28:17 Merge pull request #783 from nulltoken/topic/reinit-coverage Repo reinit fix + enhanced test coverage
Vicent Martí c6713398 2012-06-25T23:27:35 Merge pull request #785 from nulltoken/topic/refs-fromglob Topic/refs fromglob
Vicent Martí b15b91f5 2012-06-25T10:32:05 Merge pull request #786 from schu/indexer indexer: start parsing input data immediately
Michael Schubert f9fd7105 2012-06-25T15:26:38 indexer: start parsing input data immediately Currently, the first call of git_indexer_stream_add adds the data to the underlying pack file and opens it for later use, but doesn't start parsing the already available data. This means, git_indexer_stream_finalize only works if git_indexer_stream_add was called at least twice. Kill this limitation by parsing available data immediately.
Vicent Marti 60029f49 2012-06-24T16:56:32 amigaos: Add missing include
nulltoken 11634346 2012-06-22T17:04:16 revwalk: make git_revwalk_(push|hide)_glob() leverage git_reference_foreach_glob()
nulltoken 527ed554 2012-06-22T15:51:44 references: introduce git_reference_foreach_glob()
Vicent Marti 798e4d53 2012-06-22T21:25:17 amigaos: Cleanup
Vicent Marti 2ae052d1 2012-06-22T20:48:50 Merge branch 'pull-req' of https://github.com/chris-y/libgit2 into amigaos
nulltoken 2c227b8b 2012-06-22T00:02:23 repository: fix configuration updating issue while reinitialization When the repository was reinitialized, every configuration change in repo_init_config() was directly performed against the file on the filesystem. However, a previous version of the configuration had previously been loaded in memory and attached to the repository, in repo_init_reinit(). The repository was unaware of the change and the stale cached version of the configuration never refreshed.
Vicent Martí fb8aa9e1 2012-06-21T20:12:50 Merge pull request #782 from nulltoken/topic/branch-foreach Branch foreach
Vicent Martí 7e912dd6 2012-06-21T11:22:45 Merge pull request #780 from schu/cleanup Cleanup
nulltoken d4827081 2012-06-21T18:48:36 branch: drop git_branch_list()
nulltoken a8fd805e 2012-06-21T18:29:38 branch: add git_branch_foreach()
liyuray dfa0b65c 2012-06-21T20:17:54 fix below issues on mingw: 1. compile warning: D:\libgit2.git\src\win32\posix_w32.c: In function 'p_open': D:\libgit2.git\src\win32\posix_w32.c:235:10: warning: 'mode_t' is promoted to 'int' when passed through '...' [enabled by default] D:\libgit2.git\src\win32\posix_w32.c:235:10: note: (so you should pass 'int' not 'mode_t' to 'va_arg') D:\libgit2.git\src\win32\posix_w32.c:235:10: note: if this code is reached, the program will abort 2. test crash. 3. the above two issues are same root cause. please see http://www.eskimo.com/~scs/cclass/int/sx11c.html
Michael Schubert f95121cb 2012-06-20T18:07:27 object: add missing git_odb_object_free
Michael Schubert dca6b228 2012-06-20T18:06:37 notes: fix memory leaks
Carlos Martín Nieto b3aa4406 2012-06-21T02:15:25 repository: avoid opening the repository twice on reinit The call to repo_init_reinit already takes care of opening the repository and giving us a git_repository object to give to the caller. There is no need to call git_repository_open again.
Chris Young b6423939 2012-06-20T20:35:13 more getaddrinfo compatibility
Chris Young 8d18f1f7 2012-06-20T20:12:30 getaddrinfo() replacement functions
Ben Straub a15e7f86 2012-06-19T21:12:04 Fix indentation.
Ben Straub eb6bc45f 2012-06-19T21:11:48 Avoid uninitialized variable error.
Carlos Martín Nieto 1d94a7d0 2012-06-20T02:15:42 diff: make sure we free all allocated resources When the creation of one iterator fails, we need to free the prefix and possibly one of the iterators. Make sure we do so.
Carlos Martín Nieto c06e0003 2012-06-20T01:41:30 odb: don't leak when detecting id ambiguity If we find several objects with the same prefix, we need to free the memory where we stored the earlier object. Keep track of the raw.data pointer across read_prefix calls and free it if we find another object.
Carlos Martín Nieto cdca82c7 2012-06-20T00:46:26 Plug a few leaks
Vicent Martí c3ce8d0c 2012-06-19T15:17:35 Merge pull request #775 from arrbee/fix-index-filemodes Make index add/append support core.filemode flag
Vicent Martí 52329940 2012-06-19T15:04:45 Merge pull request #768 from nulltoken/topic/expose-message-prettify message: Expose git_message_prettify()
Carlos Martín Nieto 053b5096 2012-06-19T23:36:36 revparse: handle a non-existent path in the colon syntax oid_for_tree_path may not always find the path in the tree, in which case we need to return an error. The current code doesn't do this and results in undefined behavior.
Russell Belfer da825c92 2012-06-19T14:27:02 Make index add/append support core.filemode flag This fixes git_index_add and git_index_append to behave more like core git, preserving old filemode data in the index when adding and/or appending with core.filemode = false. This also has placeholder support for core.symlinks and core.ignorecase, but those flags are not implemented (well, symlinks has partial support for preserving mode information in the same way that git does, but it isn't tested).
Ben Straub 2c90145a 2012-06-19T09:24:44 Fix potential segfault in revparse.
nulltoken 743a4b3b 2012-06-15T22:24:59 message: Expose git_message_prettify() git_commit() and git_tag() no longer prettify the message by default. This has to be taken care of by the caller. This has the nice side effect of putting the caller in position to actually choose to strip the comments or not.
Vicent Martí 68f527c4 2012-06-18T17:50:12 Merge pull request #758 from libgit2/config-values-containing-quotes Quotes inside config values don't survive serialization/deserialization