summaryrefslogtreecommitdiff
path: root/rebase.go
AgeCommit message (Collapse)Author
2024-12-16update to libgit2 version 1.8.4. dump old github and vendor stuffJeff Carr
go install go.wit.com/apps/go-clone@latest go install go.wit.com/apps/go-mod-clean@latest go-clone --recusive go.wit.com/lib/git2go Signed-off-by: Jeff Carr <[email protected]>
2022-02-24rebase: Add wrapper for `git_rebase_inmemory_index()` (#900)Patrick Steinhardt
* rebase: Fix missing initialization of the repo pointer While the `Rebase` structure has a pointer to the repository the rebase is creatde in, this pointer isn't ever initialized. Fix this. * rebase: Add wrapper for `git_rebase_inmemory_index()` Add a new wrapper for `git_rebase_inmemory_index()`, which can be used to retrieve the index for an in-memory rebase. Co-authored-by: Patrick Steinhardt <[email protected]>
2021-09-05libgit2 v1.2.0 #majorlhchavez
This commit introduces libgit2 v1.2.0 to git2go, which brings a large number of [bugfixes and features](https://github.com/libgit2/libgit2/releases/tag/v1.2.0). This also marks the start of the v32 release.
2021-09-05Make all Options objects consistentlhchavez
This change makes all Options objects have child Option fields as values (instead of pointers) to mirror the libgit2 interface. It also names them Options instead of Opts to match the current libgit2 nomenclature and removes the Version fields.
2021-09-05Make all non-user-creatable structures non-comparable (#802)lhchavez
This change makes all non-user-creatable structures non-comparable. This makes it easier to add changes later that don't introduce breaking changes from the go compatibility guarantees perspective. This, of course, implies that this change _is_ a breaking change, but since these structures are not intended to be created by users (or de-referenced), it should be okay.
2020-12-10More callback refactoring (#713)lhchavez
This change: * Gets rid of the `.toC()` functions for Options objects, since they were redundant with the `populateXxxOptions()`. * Adds support for `errorTarget` to the `RemoteOptions`, since they are used in the same stack for some functions (like `Fetch()`). Now for those cases, the error returned by the callback will be preserved as-is.
2020-12-05Refactor all callbacks (#700)lhchavez
This change is a preparation for another change that makes all callback types return a Go error instead of an error code / an integer. That is going to make make things a lot more idiomatic. The reason this change is split is threefold: a) This change is mostly mechanical and should contain no semantic changes. b) This change is backwards-compatible (in the Go API compatibility sense of the word), and thus can be backported to all other releases. c) It makes the other change a bit smaller and more focused on just one thing. Concretely, this change makes all callbacks populate a Go error when they fail. If the callback is invoked from the same stack as the function to which it was passed (e.g. for `Tree.Walk`), it will preserve the error object directly into a struct that also holds the callback function. Otherwise if the callback is pased to one func and will be invoked when run from another one (e.g. for `Repository.InitRebase`), the error string is saved into the libgit2 thread-local storage and then re-created as a `GitError`.
2020-12-05Mark some symbols to be deprecated #minor (#698)lhchavez
This change introduces the file deprecated.go, which contains any constants, functions, and types that are slated to be deprecated in the next major release. These symbols are deprecated because they refer to old spellings in pre-1.0 libgit2. This also makes the build be done with the `-DDEPRECATE_HARD` flag to avoid regressions. This, together with [gorelease](https://godoc.org/golang.org/x/exp/cmd/gorelease)[1] should make releases safer going forward. 1: More information about how that works at https://go.googlesource.com/exp/+/refs/heads/master/apidiff/README.md
2020-10-22refactor: Use undeprecated options init (#656)Suhaib Mujahid
This PR move form linking against the deprecated `init_options` functions to the renamed `options_init` functions. For more context see libgit2/libgit2@0b5ba0d744e69da5dc8c08d167c83dd87ed83af2 and libgit2/libgit2@c6184f0c4b209e462bf3f42ab20df2d13d8ee918.
2020-08-18Add support for creating signed commits and signing commits during a rebase ↵michael boulton
(#626)
2018-01-21rebase: make RebaseOperationType a fmt.StringerJosh Bleecher Snyder
Helps with debugging.
2018-01-21rebase: add RebaseOperationRewordJosh Bleecher Snyder
2017-10-01Fix typo in the error messageHarsimran Singh Maan
2017-07-08rebase: correct the return values for CurrentOperationIndexCarlos Martín Nieto
We were incorectly reporting `C.GIT_REBASE_NO_OPERATION` as an error code when it is none. We should instead return it as the value. The compiler doesn't seem to actually look at the sizes so instead we must recreate the value ourselves with `^uint(0)`. The error return is kept for API compatibility but should go away eventually.
2017-07-08Third round of keep-alive aditionsCarlos Martín Nieto
2016-11-23LockOSThread in CurrentOperationIndex for git error creationezwiebel
2016-11-01Took @carlosmn PR review into accountezwiebel
2016-09-14Fix reference bug introduced with RebaseOptions implementationezwiebel
2016-09-13Add DefaultRebaseOptions() ↵ezwiebel
[git_rebase_init_options(GIT_REBASE_OPTIONS_VERSION)] service to wrapper
2016-09-12Add RebaseOpen() service to wrapperezwiebel
2016-08-08Fix Free() service in Rebase wrapperezwiebel
2016-08-07Add CurrentOperationIndex() and OperationAt(index uint) services to wrapperezwiebel
2016-08-07Add Abort() service to wrapperezwiebel
2016-08-07Add operation OperationCount() service and enrich UTsezwiebel
2016-08-07Initial rebase wrapper versionezwiebel