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
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
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
Patrick Steinhardt
de45a4b8ed
submodule: use HandleList for C function callbacks
2015-05-22 09:02:24 +02:00
Patrick Steinhardt
be3a626f2e
tree: use HandleList for C function callbacks.
2015-05-22 09:02:24 +02:00
Patrick Steinhardt
bde012f3d4
handles: correctly initialize all members
2015-05-22 09:02:24 +02:00
Carlos Martín Nieto
7750e85fd1
Introduce an indirection layer for pointers
...
As the Go runtime can move stacks at any point and the C code runs
concurrently with the rest of the system, we cannot assume that the
payloads we give to the C code will stay valid for any particular
duration.
We must therefore give the C code handles which we can then look up in
our own list when the callbacks get called.
2015-05-22 09:02:24 +02:00
Carlos Martín Nieto
193deb7ae3
Merge pull request #202 from libgit2/index-basics
...
Add a few basic index operations
2015-05-19 15:21:49 +02:00
Carlos Martín Nieto
72c19f73c9
Index: Add Path() accessor
2015-05-19 15:05:00 +02:00
Carlos Martín Nieto
d7a0495000
Index: Add OpenIndex
...
This lets you persist an index at an arbitrary location.
2015-05-19 14:56:01 +02:00
Carlos Martín Nieto
a8ad0d2040
Index: Add ReadTree()
2015-05-19 14:49:05 +02:00
Carlos Martín Nieto
f7781c0e00
Merge pull request #179 from schani/master
...
Additions
2015-04-27 23:29:49 +02:00
Carlos Martín Nieto
9538c7f750
Merge pull request #197 from pks-t/test-cleanups
...
tests: always clean up temporary repository dirs
2015-04-24 16:47:42 +02:00
Patrick Steinhardt
e300945a3d
tests: always clean up temporary repository dirs
...
Some test repositories are not correctly removed after the tests
did run. Fix by introducing a function that is to be used for
cleaning up temporary test repositories.
2015-04-24 13:01:51 +02:00
Carlos Martín Nieto
1011b03e41
Merge pull request #195 from shurcooL/next-ignore-script
...
Avoid installing script binary to user's $GOPATH/bin.
2015-04-21 12:32:35 +02:00
Carlos Martín Nieto
b374e16db8
Update to libgit2 4c02d3937
2015-04-18 04:50:39 +02:00
Dmitri Shuralyov
acc05926f7
Avoid installing script binary to user's $GOPATH/bin.
2015-04-16 18:45:53 -07:00
Carlos Martín Nieto
e021457f27
Merge pull request #180 from arcamael/master
...
Add possibiliy of checkout on specific path
2015-04-03 14:45:38 +02:00
Carlos Martín Nieto
1ba7e13a3a
Merge pull request #191 from kron4eg/patch-1
...
Test on travis using Go1.4
2015-04-03 14:43:11 +02:00
Artiom Di
6454808f69
Test on travis using Go1.4 too
2015-04-03 14:53:15 +03:00
Mark Probst
b3e7304abf
Add a FIXME.
2015-03-23 12:02:17 -07:00
Mark Probst
524cc7967b
Add DiffIndexToWorkdir
2015-03-23 12:02:17 -07:00
Mark Probst
8622831b11
Add DiffTreeToWorkdirWithIndex
2015-03-23 12:02:17 -07:00
Mark Probst
43102043fb
Add Commit.Amend
2015-03-23 12:02:16 -07:00
Carlos Martín Nieto
a4d5118374
Merge pull request #185 from griffindy/dg-add-reset
...
Add support for libgit2's git_reset.
2015-03-22 07:25:28 +01:00
Dylan Griffin
89d67328f3
Add support for libgit2's git_reset.
...
Adds a new method to *Repository called ResetToCommit as well as constants for
the three reset modes that libgit2 currently supports. This does not need to be
limited to Commit, we actually just need something with a gitObject, which blobs
and other Objects have, they will just require different methods. I only need
to be able to reset to commits, so that's all I'm implementing right now.
Also adds a test which updates the test repository README twice and then resets
to the first commit.
2015-03-21 18:37:00 -04:00
Geoffrey Ragot
c4b8861b34
Add possibiliy of checkout on specific path
2015-03-15 10:14:29 +01:00
Carlos Martín Nieto
c4fce1a218
Update to libgit2 d675982a153
...
There's been some changes to the checkout strategy, especially the
SAFE_CREATE mode, which is now the RECREATE_MISSING flag, though that
shouldn't be necessary to use in the general case.
The largest changes come from the removal of the signture from
ref-modifying functions/methods and the removal of the reflog string in
all but those directly related to moving references.
2015-03-15 01:49:32 +01:00
Carlos Martín Nieto
a2878cf7b2
Merge branch 'v22'
2015-03-15 01:22:58 +01:00
Carlos Martín Nieto
1b44c0a234
Add a bit more on next vs master
2015-03-15 01:21:21 +01:00
Carlos Martín Nieto
050e6fbc49
Correct README on what master tracks
...
The second mention still said that master tracks master. Add a mention
of next which will become the branch to track upstream tip.
2015-03-15 01:19:32 +01:00
Carlos Martín Nieto
137c4fc3c8
Merge branch 'master' into v22
2015-03-15 01:09:11 +01:00