Commit Graph

560 Commits

Author SHA1 Message Date
Carlos Martín Nieto 6d3a3499f1 Merge branch 'master-v23' 2015-08-31 19:58:29 +02:00
Carlos Martín Nieto 4090c401c8 Don't call the finalizer on a borrowed repository
When libgit2 gives us the repository for us to create the remote in, we
do not own it, so we must make sure we don't try to free it.
2015-08-31 16:07:37 +02:00
Carlos Martín Nieto 2743bbfca3 Test against Go 1.5 2015-08-31 16:07:37 +02:00
Carlos Martín Nieto 1ea9965824 Install v23 on Travis 2015-08-31 16:07:37 +02:00
Carlos Martín Nieto 337f25d47e Remove the vendored libgit2 submodule
This is a left-over from the merge from 'next'.
2015-08-31 16:07:08 +02:00
Carlos Martín Nieto f72db33baf Merge branch 'next' 2015-08-31 13:55:46 +02:00
Carlos Martín Nieto 157593f38d Don't trat a revwalk's ITEROVER as an error 2015-08-31 13:13:27 +02:00
Carlos Martín Nieto e4b2222888 Merge pull request #242 from pks-t/fix-populate-clone-options
clone: do not free clone options' payload
2015-08-31 13:05:36 +02:00
Carlos Martín Nieto c6c2e9389f Merge branch 'push-cb' into next 2015-08-31 12:52:20 +02:00
Aaron O'Mullan 803ef7dad5 Add nil check on CredentialsCallback wrapper 2015-08-31 12:48:11 +02:00
Aaron O'Mullan a572b15df6 Add back support for RemoteCallbacks in Remote.Push() 2015-08-31 12:43:36 +02:00
Patrick Steinhardt 0b530c15cf clone: improve handling of remote create callback
The clone options contain fields for ae remote create callback
and its payload, which can be used to override the behavior when
the default remote is being created for newly cloned
repositories.

Currently we only accept a C function as callback, though, making
it overly complicated to use it. We also unconditionally `free`
the payload if its address is non-`nil`, which may cause the
program to segfault when the memory is not dynamically allocated.

Instead, we want callers to provide a Go function that is
subsequently being called by us. To do this, we introduce an
indirection such that we are able to extract the provided
function and payload when being called by `git_clone` and handle
the return values of the user-provided function.
2015-08-18 14:01:51 +02:00
Carlos Martín Nieto 3d15c877d8 Merge pull request #241 from pks-t/memleak-fixes
Memleak fixes
2015-08-13 02:04:23 +02:00
Patrick Steinhardt 37bb1a6025 merge: fix memory leak related to merge file opts 2015-08-12 10:24:59 +02:00
Patrick Steinhardt cce14aa58b branch: fix memory leaks related to CStrings 2015-08-12 10:24:59 +02:00
Carlos Martín Nieto ff6d4a7dfd We do require sudo on Travis 2015-08-04 15:01:17 +02:00
Carlos Martín Nieto 47949510f1 Merge remote-tracking branch 'origin/master' into next 2015-08-04 14:59:10 +02:00
Carlos Martín Nieto 5d989f2cad Merge pull request #236 from clns/object-peel
Add ability to peel any git object
2015-08-03 10:56:47 +02:00
Carlos Martín Nieto fba081ddbb Merge pull request #227 from clns/describe
Add git-describe support
2015-08-03 10:50:11 +02:00
Calin Seciu 17950c198b Add ability to peel any git object
Includes support for 'git_object_peel'.
2015-08-01 14:28:20 +02:00
Calin Seciu 1018ff76d0 Add git-describe support
Includes 'git_describe_commit' and 'git_describe_workdir'.
2015-07-31 22:39:33 +02:00
Carlos Martín Nieto ed62fda34d Merge pull request #234 from libgit2/cmn/merge-base
Wrap MergeBases
2015-07-31 20:27:15 +02:00
Carlos Martín Nieto c0c6caed3a Merge branch 'tags-col' into next 2015-07-31 20:24:18 +02:00
Carlos Martín Nieto def4494b74 Move CreateTag to the tags collection 2015-07-31 20:23:05 +02:00
Carlos Martín Nieto efd61a4bc0 Wrap MergeBases
While here, test MergeBase as well.
2015-07-31 11:37:18 +02:00
Calin Seciu 6c4af98c5b Add more support for tags
Implement support for the following libgit2 functions:

- 'git_tag_list' and 'git_tag_list_match'
- 'git_tag_foreach'
- 'git_tag_create_lightweight'
2015-07-31 10:07:26 +02:00
Calin Seciu 12311c8528 Add TagsCollection 2015-07-31 09:51:19 +02:00
Carlos Martín Nieto 3de64ea8af Merge pull request #233 from tuexss/typos
Fixed typos/unclarities in README.md
2015-07-29 21:05:09 +02:00
Andreas Beer 08d30893b6 Headline typo 2015-07-29 11:28:34 +02:00
Andreas Beer 47d82916e2 Typos/unclarities in readme. 2015-07-29 11:28:05 +02:00
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
Carlos Martín Nieto f2d8797a96 Merge pull request #231 from shurcooL/master-fix-HandleList-Track-gc-issue
[master] Prevent slot int variable from being GCed.
2015-07-28 08:09:01 +02:00
Dmitri Shuralyov e1e1b4b1e1 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-26 15:02:40 -07: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