Commit Graph

528 Commits

Author SHA1 Message Date
Carlos Martín Nieto a2e4e9259b Merge pull request #230 from clns/tree-entry-by-id
Find tree entry by id
2015-07-29 01:53:10 +02:00
Calin Seciu 64c160f6f2 Find tree entry by id
Add support for 'git_tree_entry_byid'.
2015-07-24 19:52:51 +03:00
Carlos Martín Nieto b4ba35d85c Merge pull request #228 from clns/ref-additions
Reference additions
2015-07-24 14:23:15 +02:00
Carlos Martín Nieto d307391e08 Merge pull request #219 from shurcooL/next-fix-HandleList-Track-gc-issue
[next] Prevent slot int variable from being GCed.
2015-07-24 13:43:19 +02:00
Calin Seciu ec93213f21 Add ReferenceIsValidName() 2015-07-24 12:14:53 +03:00
Calin Seciu 4b88210cbf Add check if reference is a note 2015-07-24 12:14:24 +03:00
Carlos Martín Nieto 28dee704ca Bring back CheckoutForce
This was mistakenly deleted when the SafeCreate was replaced with
RecreateMissing.
2015-07-10 00:31:32 +02:00
Dmitri Shuralyov b5693c1429 Prevent slot int variable from being GCed.
Before this change, there were no users of slot int variable in the Go
world (just a pointer to it that ended up in C world only), so Go's
garbage collector would free it and its value could not retrieved later
(once a pointer to it comes back to Go world from C world).

Keep a pointer to it in the Go world so that does not happen.

Fixes #218.
2015-07-06 19:27:58 -07:00
Carlos Martín Nieto b4ade2b9c6 Merge remote-tracking branch 'upstream/master' into next 2015-07-01 16:07:02 +02:00
Carlos Martín Nieto 4eae20ec27 Adjust style 2015-07-01 16:00:17 +02:00
Carlos Martín Nieto 84275e691f Merge commit 'refs/pull/198/head' of github.com:libgit2/git2go 2015-07-01 15:58:21 +02:00
Carlos Martín Nieto 2475907105 Merge commit 'refs/pull/174/head' of github.com:libgit2/git2go 2015-07-01 15:56:06 +02:00
Carlos Martín Nieto 47191d1274 Submodule: use the Repository constructor 2015-06-30 19:12:39 +02:00
Carlos Martín Nieto b6811196e4 Clone: test we clone something usable and fix constructor
Clone was still trying to do its own initialisation, which was missing
all of the namespacing changes.
2015-06-30 19:08:29 +02:00
Carlos Martín Nieto 66d266f971 Repository: move to use an actual constructor
This should further reduce the changes of the creation of the object
going badly.
2015-06-30 19:03:52 +02:00
Carlos Martín Nieto d478f4b111 Merge pull request #216 from libgit2/diff
Add blob diffing
2015-06-30 10:56:47 +02:00
Carlos Martín Nieto e066d24efb Add DiffBlobs
This lets you diff two arbitrary blobs with arbitrary names.
2015-06-29 21:29:47 +02:00
Carlos Martín Nieto 86e9917919 diff: remove unnecessary args to Hunk and Line ctors 2015-06-29 21:29:47 +02:00
Carlos Martín Nieto 0ce52d9aeb Update to libgit2 fb84cde8 2015-06-28 14:35:57 +02:00
Carlos Martín Nieto 2d6b1ebd4c travis: make the script executable 2015-06-28 13:19:03 +02:00
Carlos Martín Nieto 5f3a9d76b8 travis: don't install libgit2 for 'next' branch
We have our own libgit2 in a submodule, so this is unnecessary. While in
the area, update which version of libgit2 would be downloaded and remove
unnecessary CMake flags.
2015-06-28 13:17:14 +02:00
Carlos Martín Nieto 3115b6c762 travis: allow containerized builds
These builds should be quicker and faster. We don't need sudo, so write
that down for Travis to move us to these builds.
2015-06-28 01:32:59 +02:00
Carlos Martín Nieto e50203a253 Merge remote-tracking branch 'upstream/master' into next
Conflicts:
	branch.go
2015-06-28 01:32:13 +02:00
Carlos Martín Nieto 70c95a7655 Create a NotesCollection for managing notes
As with the others, move these methods into their own namespace.
2015-06-28 01:19:22 +02:00
Carlos Martín Nieto 01a2d8d38d Create a ReferenceCollection for managing references
As with the other commits, this clears up the clutter in naming and
around the Repository's API.
2015-06-28 01:12:32 +02:00
Carlos Martín Nieto d2808d1610 Create a SubmoduleCollection for managing submodules
Similarly to RemoteCollection, this allows us to namespace the submodule
operations much more concisely and removes API on the Repository.
2015-06-28 00:58:31 +02:00
Carlos Martín Nieto 4b9cbd78fd Create a RemoteCollection for managing remotes
Instead of making the 'Remote' part of the function calls, create a
collection object which serves to namespace the operations for the
remotes.
2015-06-28 00:51:17 +02:00
Carlos Martín Nieto ba0a24087a Get rid of Owner() on Remote and Submdoule
These are inherently unsafe. The underlying pointer might get released
at any moment.
2015-06-28 00:49:56 +02:00
Carlos Martín Nieto d400f1d5b2 Update to libgit2 fa39975 2015-06-28 00:34:54 +02:00
Carlos Martín Nieto 2488de286c Merge pull request #212 from libgit2/remote-handle
Make the network code use handles
2015-06-23 13:33:34 +02:00
Carlos Martín Nieto c00a05586b Make the network code use handles
This wasn't ported together with the rest, but it does exhibit the same
issues, so let's port it over now.
2015-06-10 13:37:59 +02:00
Carlos Martín Nieto 53fd8ea011 Merge pull request #211 from shinningstar/master
Free reference resource allocated by libgit2 during go garbage collecting
2015-06-09 11:27:44 +02:00
shinningstar 830e171463 Free reference resource allocated by libgit2 during go garbage collecting 2015-06-08 22:36:31 +08:00
Carlos Martín Nieto aefe85039e Merge pull request #210 from michaeledgar/master
Add error code matching GIT_EAUTH for authentication failures
2015-06-08 05:13:32 +02:00
Carlos Martín Nieto 36e0a256fe Update to libgit2 b6011e29 2015-06-08 04:11:21 +02:00
Carlos Martín Nieto 85fde1fcfb Merge remote-tracking branch 'origin/master' into next 2015-06-08 04:07:49 +02:00
Mike Edgar af7739787c Add error code matching GIT_EAUTH for authentication failures 2015-06-07 19:20:43 -04:00
taylorchu 53c158fbd7 Fix test error messages 2015-05-30 22:27:08 +02:00
Carlos Martín Nieto 35ff0de855 Merge pull request #196 from pks-t/pointer-indirection
[WIP/RFC] Pointer indirection
2015-05-30 22:23:23 +02:00
Patrick Steinhardt e8531dd5c3 diff: only untrack notify payload when it is set 2015-05-22 10:01:50 +02:00
Patrick Steinhardt c43afaf9c4 tree: use correct C callback signature 2015-05-22 09:56:21 +02:00
Patrick Steinhardt 1bd338af5e handles: do not store handles by uintptr
If we store values by uintptrs the GC may try to inspect their
values when it kicks in. As the pointers are most likely invalid,
this will result in an invalid pointer dereference, causing the
program to panic. We can fix this by storing values by an int
index value instead, returning pointers to those indices as
handles instead.
2015-05-22 09:50:16 +02:00
Patrick Steinhardt d95932c84a handles: panic when we cannot retrieve handle data 2015-05-22 09:02:39 +02:00
Patrick Steinhardt a843b7247f packbuilder: use HandleList for C function callbacks. 2015-05-22 09:02:24 +02:00
Patrick Steinhardt 83f9e6a705 blob: use HandleList for C function callbacks. 2015-05-22 09:02:24 +02:00
Patrick Steinhardt fe902f56a8 diff: use HandleList for C function callbacks. 2015-05-22 09:02:24 +02:00
Patrick Steinhardt 7ee534d0c5 handles: print pointer handle on panic. 2015-05-22 09:02:24 +02:00
Patrick Steinhardt e919653755 odb: use HandleList for C function callbacks. 2015-05-22 09:02:24 +02:00
Patrick Steinhardt 9bbec34885 index: use HandleList for C function callbacks. 2015-05-22 09:02:24 +02:00
Patrick Steinhardt 0a336e4abd handles: start slot indices with 1
Using 0 as the first slot indice leads to not being able to
differentiate between a handle to the first element or a
NULL-handle. As current code may check whether the pointer is
NULL, change the first indice to be 1 instead.
2015-05-22 09:02:24 +02:00