Commit Graph

2993 Commits

Author SHA1 Message Date
Ben Straub
dc03369c07 checkout: create submodule dirs 2012-07-21 20:12:28 -07:00
Ben Straub
7cae2bcdf9 filter: fix memory leak 2012-07-21 20:11:37 -07:00
Carlos Martín Nieto
b3aaa7a7c8 Add a struct for network callbacks
Currently only update_tips is used, but it prepares the way for
progress output during download.
2012-07-21 18:44:01 +02:00
Carlos Martín Nieto
14e1bc157a tests: plug a leak in the config stress 2012-07-21 17:55:35 +02:00
Vicent Martí
5b78696334 Merge pull request #818 from nulltoken/rework
Revparse rework
2012-07-21 07:56:59 -07:00
Carlos Martín Nieto
6782245e51 repo: add git_repository_wrap_odb() to wrap an ODB
Primarily useful when used together with git_odb_backend_one_pack().
2012-07-21 16:24:13 +02:00
Carlos Martín Nieto
507523c32f 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.
2012-07-21 16:23:49 +02:00
Carlos Martín Nieto
5d9cfa07ac config: escape subsection names when creating them
This allows us to set options like "some.foo\\ish.var".

This closes #830
2012-07-21 02:28:46 +02:00
Vicent Martí
c8a1892e71 Merge pull request #831 from schu/tree-walk-order
tree: fix ordering for git_tree_walk
2012-07-20 06:56:09 -07:00
Russell Belfer
71d2735837 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.
2012-07-19 10:23:45 -07:00
Michael Schubert
c6f429535c tree: fix ordering for git_tree_walk
Josh Triplett noticed libgit2 actually does preorder entries in
tree_walk_post instead of postorder. Also, we continued walking even
when an error occured in the callback.

Fix #773; also, allow both pre- and postorder walking.
2012-07-19 18:44:08 +02:00
Ben Straub
09a03995e0 Checkout: make core.symlinks test work on OSX. 2012-07-17 20:20:34 -07:00
Ben Straub
8651c10f1e Checkout: obey core.symlinks. 2012-07-17 19:57:37 -07:00
nulltoken
e2c81fca8f revparse: deploy git_object_peel() 2012-07-17 20:32:41 +02:00
nulltoken
db9be9457d object: introduce git_object_peel()
Partially fix #530
2012-07-17 20:32:40 +02:00
nulltoken
b8748c1217 revparse: enhance parsing engine 2012-07-17 20:32:39 +02:00
Ben Straub
3e026f1b45 Update master-tip to fix unit test. 2012-07-17 09:00:38 -07:00
Ben Straub
bfc6563405 Merge branch 'development' into clone 2012-07-17 08:08:34 -07:00
Vicent Martí
5a8204f8a8 Merge pull request #827 from schu/cleanup-error-cruft
Remove old error handling code
2012-07-17 04:14:49 -07:00
Michael Schubert
6fc0bdc53e Remove old error handling code 2012-07-17 10:52:16 +02:00
Ben Straub
1d68fcd04b Checkout: handle symlinks.
Includes unfinished win32 implementation.
2012-07-16 16:22:41 -07:00
Ben Straub
9587895f57 Migrate code to git_filter_blob_contents.
Also removes the unnecessary check for filter 
length, since git_filters_apply does the right 
thing when there are none, and it's more efficient
than this.
2012-07-16 12:06:23 -07:00
Ben Straub
41ad70d0a8 Use git_blob__getbuf. 2012-07-16 11:32:24 -07:00
Vicent Martí
ea5d2ce4cf Merge pull request #823 from schu/cmake-install-dir
libgit2.pc.in: also switch to LIB_INSTALL_DIR
2012-07-16 04:50:26 -07:00
Michael Schubert
77ace82d7a libgit2.pc.in: also switch to LIB_INSTALL_DIR
b3237ac3 changed CMakeList.txt to use the more standard LIB_INSTALL_DIR
variable instead of INSTALL_LIB, but forgot to change libgit2.pc.in etc.
accordingly.
2012-07-16 13:30:23 +02:00
nulltoken
d448392e5d revparse: extend test coverage 2012-07-15 18:41:55 +02:00
nulltoken
b0f1533867 revparse: add reflog test data 2012-07-15 18:41:54 +02:00
Vicent Martí
d4b573513c Merge pull request #821 from nacho/development
Add support for the more standard LIB_INSTALL_DIR variable
2012-07-15 07:42:14 -07:00
Vicent Marti
227f313119 attr: Rename the git_attr__ exports
Pevents collisions with the original libgit, which also exports those
exact symbols.

Fixes #822
2012-07-15 14:32:51 +02:00
Carlos Martín Nieto
d1af70b050 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.
2012-07-14 22:29:11 +02:00
Ben Straub
71bc89b9b6 Disable test that aren't quite ready yet. 2012-07-13 20:24:40 -07:00
Ben Straub
dc1b0909d6 Create filtered_blob_contents out of parts on hand. 2012-07-13 16:44:13 -07:00
Ben Straub
280c7bbf13 Add checkout test suite.
Removed 'bare' option from test repository to 
allow checkout tests.
2012-07-13 15:52:27 -07:00
Ben Straub
deac801de9 Fix documentation comment to match actual params. 2012-07-13 15:50:23 -07:00
Carlos Martín Nieto
7b8c9e123d 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.
2012-07-13 20:46:16 +02:00
Ignacio Casal Quinteiro
b3237ac313 Add support for the more standard LIB_INSTALL_DIR variable 2012-07-13 17:14:08 +02:00
Vicent Martí
0848ec24fa Merge pull request #815 from nulltoken/topic/revparse-refac
More revparse <3
2012-07-13 06:56:24 -07:00
Vicent Martí
68c5ef5cc5 Merge pull request #817 from nulltoken/fix/refs-leak
refs: fix a memory leak
2012-07-13 06:53:33 -07:00
nulltoken
151d81a647 refs: fix a memory leak 2012-07-12 22:53:41 +02:00
nulltoken
b5f9011524 revparse: fix propagation of error 2012-07-12 22:33:48 +02:00
nulltoken
5a6f31f28b 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.
2012-07-12 22:30:02 +02:00
nulltoken
d1b7921a48 revparse: fix disambiguation of refs and abbrev oids 2012-07-12 22:30:00 +02:00
nulltoken
bb89cf9478 revparse: simplify handling of the colon syntax 2012-07-12 22:29:58 +02:00
nulltoken
dc1f4b32d3 tree: unfound tree entry returns GIT_ENOTFOUND 2012-07-12 22:29:55 +02:00
nulltoken
1c3edb3078 tree: prevent git_tree_entry_free() from segfaulting when being passed a NULL tree_entry 2012-07-12 22:29:53 +02:00
Carlos Martín Nieto
9f99c5de2e travis: make it run the tests under valgrind 2012-07-12 21:26:21 +02:00
Russell Belfer
465092ce3f Fix memory leak in test 2012-07-12 11:56:50 -07:00
Russell Belfer
39b8e047b4 Missed a couple of khash inline dependencies 2012-07-12 11:52:10 -07:00
Russell Belfer
72ee078762 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".
2012-07-12 11:49:15 -07:00
Carlos Martín Nieto
b7158c53a4 Use GIT_INLINE instead of inline 2012-07-12 20:48:46 +02:00