|
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().
|
|
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.
|
|
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.
|
|
6fc0bdc5
|
2012-07-17T10:52:16
|
|
Remove old error handling code
|
|
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
|
|
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.
|
|
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.
|
|
0848ec24
|
2012-07-13T06:56:24
|
|
Merge pull request #815 from nulltoken/topic/revparse-refac
More revparse <3
|
|
151d81a6
|
2012-07-12T22:03:28
|
|
refs: fix a memory leak
|
|
b5f90115
|
2012-07-12T22:31:53
|
|
revparse: fix propagation of error
|
|
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.
|
|
d1b7921a
|
2012-07-12T11:46:20
|
|
revparse: fix disambiguation of refs and abbrev oids
|
|
bb89cf94
|
2012-07-12T10:57:31
|
|
revparse: simplify handling of the colon syntax
|
|
dc1f4b32
|
2012-07-12T10:52:19
|
|
tree: unfound tree entry returns GIT_ENOTFOUND
|
|
1c3edb30
|
2012-07-12T09:46:45
|
|
tree: prevent git_tree_entry_free() from segfaulting when being passed a NULL tree_entry
|
|
39b8e047
|
2012-07-12T11:52:10
|
|
Missed a couple of khash inline dependencies
|
|
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".
|
|
b7158c53
|
2012-07-12T20:48:46
|
|
Use GIT_INLINE instead of inline
|
|
dd4345b4
|
2012-07-12T09:42:54
|
|
Merge pull request #789 from carlosmn/odb-foreach
odb: add git_odb_foreach()
|
|
0cf6b2f2
|
2012-07-12T09:37:09
|
|
Merge pull request #805 from nulltoken/fix/revwalk-email-parsing
Fix revwalk email parsing
|
|
db2d4061
|
2012-07-12T09:35:35
|
|
Merge pull request #814 from nulltoken/topic/revparse-refac
Revparse refactoring: a start
|
|
48bcf81d
|
2012-07-12T09:32:44
|
|
Merge pull request #812 from arrbee/assorted-tweaks
Assorted goodies
|
|
12595ab8
|
2012-07-12T00:52:01
|
|
revparse: deploy git_reference_remote_tracking_from_branch()
|
|
84f18e35
|
2012-07-12T00:44:07
|
|
refs: introduce git_reference_remote_tracking_from_branch()
|
|
2d012c0c
|
2012-07-11T16:52:02
|
|
revparse: deploy git_commit_nth_gen_ancestor()
|
|
b1aca6ea
|
2012-07-11T16:14:12
|
|
commit: introduce git_commit_nth_gen_ancestor()
|
|
2b92a154
|
2012-07-11T11:20:20
|
|
commit: reduce code duplication
|
|
8f17ed80
|
2012-07-10T20:52:56
|
|
revparse: simplify the parsing of described object
|
|
8aedf1d5
|
2012-07-05T17:02:03
|
|
signature: prevent angle bracket usage in identity
|
|
118cf57d
|
2012-07-04T16:06:07
|
|
revwalk: relax the parsing of the commit time
|
|
a13a30ac
|
2012-07-11T05:29:51
|
|
Merge pull request #801 from nulltoken/fix/ref-renaming
refs and revparse love <3
|
|
54e29b93
|
2012-07-10T23:51:32
|
|
Fix missing NUL termination of buffer
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
4d3a7b78
|
2012-07-10T21:45:16
|
|
Merge pull request #793 from libgit2/tree-entry-by-path
Bring back `entry_bypath`
|
|
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
|
|
3e82d6c6
|
2012-07-07T08:25:39
|
|
revparse: unfound reference return ENOTFOUND
|
|
b8460c20
|
2012-07-06T23:37:44
|
|
revparse: do not segfault when retrieving the last entry
|
|
e7279381
|
2012-07-06T21:25:42
|
|
revparse: fix disambiguation of refs
|
|
805c8159
|
2012-07-06T20:44:17
|
|
revparse: unfound previous head return ENOTFOUND
|
|
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.
|
|
29f72aa6
|
2012-07-04T22:02:54
|
|
revparse: leverage git__isdigit()
|
|
98d6a1fd
|
2012-07-04T16:24:09
|
|
util: add git__isdigit()
|
|
cab65c2b
|
2012-07-05T22:26:14
|
|
revparse: detect incorrect "refname@{-n}" syntax
|
|
d0a920a6
|
2012-07-07T10:36:35
|
|
refs: deep unfound ref returns ENOTFOUND
|
|
5ffd510d
|
2012-07-04T12:23:03
|
|
refs: remove seemingly useless giterr_clear() call
|
|
33c33707
|
2012-07-04T12:20:43
|
|
refs: deploy git_reference_has_log()
|
|
75261421
|
2012-07-04T11:58:04
|
|
refs: add git_reference_has_log()
|
|
b6bfd96f
|
2012-07-03T12:07:33
|
|
refs: fix moving of the reflog when renaming a ref
|
|
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.
|
|
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.
|
|
494ae940
|
2012-07-02T17:51:02
|
|
revparse: fix parsing of date specifiers
|
|
29f9186d
|
2012-07-02T11:18:01
|
|
diff: make inter-hunk-context default value git-compliant
Default in git core is 0, not 3
|
|
52b938d5
|
2012-06-29T17:06:38
|
|
revparse: unfound reflog entry returns ENOTFOUND
|
|
08ac23a5
|
2012-06-29T17:02:29
|
|
revparse: unfound reflog ref returns ENOTFOUND
|
|
4de89ce7
|
2012-06-29T16:51:46
|
|
revparse: unfound partially-named ref returns ENOTFOUND
|
|
46ea40d9
|
2012-06-29T17:08:36
|
|
tree: Rename `entry_copy` to `entry_dup`
|
|
0e2fcca8
|
2012-06-29T02:21:12
|
|
tree: Bring back `entry_bypath`
Smaller, simpler, faster.
|
|
0e7af9e7
|
2012-06-28T18:04:01
|
|
revparse: unfound nth parent returns ENOTFOUND
|
|
0d23c62c
|
2012-06-28T11:09:16
|
|
revparse: handle specs with caret and colon
|
|
5b68ba7e
|
2012-06-27T17:27:38
|
|
revparse: unfound treepath returns ENOTFOUND
|
|
faaa7c51
|
2012-06-27T16:51:19
|
|
revparse: return trees through the "colon" syntax
|
|
e28dd29b
|
2012-06-28T07:50:16
|
|
revparse: replace spaces with tabs
|
|
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.
|
|
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.
|
|
ed754a75
|
2012-06-25T23:28:17
|
|
Merge pull request #783 from nulltoken/topic/reinit-coverage
Repo reinit fix + enhanced test coverage
|
|
c6713398
|
2012-06-25T23:27:35
|
|
Merge pull request #785 from nulltoken/topic/refs-fromglob
Topic/refs fromglob
|
|
b15b91f5
|
2012-06-25T10:32:05
|
|
Merge pull request #786 from schu/indexer
indexer: start parsing input data immediately
|
|
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.
|
|
60029f49
|
2012-06-24T16:56:32
|
|
amigaos: Add missing include
|
|
11634346
|
2012-06-22T17:04:16
|
|
revwalk: make git_revwalk_(push|hide)_glob() leverage git_reference_foreach_glob()
|
|
527ed554
|
2012-06-22T15:51:44
|
|
references: introduce git_reference_foreach_glob()
|
|
798e4d53
|
2012-06-22T21:25:17
|
|
amigaos: Cleanup
|
|
2ae052d1
|
2012-06-22T20:48:50
|
|
Merge branch 'pull-req' of https://github.com/chris-y/libgit2 into amigaos
|
|
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.
|
|
fb8aa9e1
|
2012-06-21T20:12:50
|
|
Merge pull request #782 from nulltoken/topic/branch-foreach
Branch foreach
|
|
7e912dd6
|
2012-06-21T11:22:45
|
|
Merge pull request #780 from schu/cleanup
Cleanup
|
|
d4827081
|
2012-06-21T18:48:36
|
|
branch: drop git_branch_list()
|
|
a8fd805e
|
2012-06-21T18:29:38
|
|
branch: add git_branch_foreach()
|
|
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
|
|
f95121cb
|
2012-06-20T18:07:27
|
|
object: add missing git_odb_object_free
|
|
dca6b228
|
2012-06-20T18:06:37
|
|
notes: fix memory leaks
|
|
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.
|
|
b6423939
|
2012-06-20T20:35:13
|
|
more getaddrinfo compatibility
|
|
8d18f1f7
|
2012-06-20T20:12:30
|
|
getaddrinfo() replacement functions
|
|
a15e7f86
|
2012-06-19T21:12:04
|
|
Fix indentation.
|
|
eb6bc45f
|
2012-06-19T21:11:48
|
|
Avoid uninitialized variable error.
|
|
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.
|
|
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.
|
|
cdca82c7
|
2012-06-20T00:46:26
|
|
Plug a few leaks
|
|
c3ce8d0c
|
2012-06-19T15:17:35
|
|
Merge pull request #775 from arrbee/fix-index-filemodes
Make index add/append support core.filemode flag
|
|
52329940
|
2012-06-19T15:04:45
|
|
Merge pull request #768 from nulltoken/topic/expose-message-prettify
message: Expose git_message_prettify()
|
|
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.
|
|
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).
|
|
2c90145a
|
2012-06-19T09:24:44
|
|
Fix potential segfault in revparse.
|
|
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.
|
|
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
|