| Age | Commit message (Collapse) | Author |
|
Especially in 1.8, the garbage collector can decide to finalize an object even
as we are in one of its methods. This means it can free a remote while we're in
one of its calls, as we're referencing the pointer inside the object, rather
than the `Remote` itself.
|
|
|
|
Problem string array is returned if no error is occurred
|
|
Problems can be returned as string array on RemoteCollection Rename
|
|
- Fixed credentialsCallback return value for missing callback
- Added Remote Rename
- Added Remote Disconnect
|
|
|
|
|
|
The Fetch/Push operations didn't allocate the git_*_options structure
and this causes a memory problem in the libgit2 code. Following the
example of Clone operation, the Fetch/Push functions allocates the
options structure before calling the C.
|
|
The API changes are:
- `*Remote.Connect`
```go
// from:
func (o *Remote) Connect(direction ConnectDirection, callbacks *RemoteCallbacks) error
// to:
func (o *Remote) Connect(direction ConnectDirection, callbacks *RemoteCallbacks, headers []string) error
```
- `*Remote.ConnectFetch` - `headers` was added as above
- `*Remote.ConnectPush` - `headers` was added as above
|
|
As it seems to be something that many people can't get over, reformat
all the files; as we're breaking things, whoever depended on 'next' will
have to take many changes into account anyway, so let's include this to
reduce the noise of incoming patches.
|
|
|
|
|
|
|
|
|
|
Conflicts:
branch.go
|
|
Instead of making the 'Remote' part of the function calls, create a
collection object which serves to namespace the operations for the
remotes.
|
|
These are inherently unsafe. The underlying pointer might get released
at any moment.
|
|
|
|
This wasn't ported together with the rest, but it does exhibit the same
issues, so let's port it over now.
|
|
|
|
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.
|
|
|
|
|
|
|
|
This gets rid of the Push object. All network now goes through the
Remote object.
|
|
This unifies the types with the Push struct, in preparation for its
deletion.
|
|
This deprecates the Push struct in favour of Remote.Push()
|
|
|
|
|
|
Add wrapper for git_remote_delete : Repository.DeleteRemote
|
|
|
|
|
|
While Go will assign the correct type to a const block when it
auto-creates the values, assigning makes the const be typeless and will
only gain it in each particular use.
Make each constant in the blocks have an assigned type.
|
|
|
|
|
|
|
|
Allow filtering heads by name.
|
|
We should not return 0, as in this case that means we let it through,
return an appropriate error instead.
|
|
It turns out that some systems have a strings.h which includes string.h,
which does not happen on GNU systems.
|
|
While they're not exactly certificates, they belong in the same
category.
|
|
Conflicts:
remote.go
|
|
|
|
The option to ignore the server's certificate has been removed, replaced
witha callback for the user to perform their own checking.
Remote.Fetch() now performs opportunistic updates and takes a list of
refspecs to use as the active set for a particular fetch.
|
|
add remote functions to set callbacks / set cert check
|
|
This fixes #87
|
|
|
|
Was that it would break and we'd remember that the order changed. Oh
well.
|
|
|
|
|
|
|