This functionally is still under development. So stability of this part of the API is uncertain.

class remote#
method (full-name (object REMOTE))#

The name of the remote.

See also: full-name

method (short-name (object REMOTE))#

The name of the remote.

See also: short-name

method (get-object (class (eq REMOTE)) (id/name T) (repository T))#

Return an object of type CLASS from the object database. The lookup will use either an oid or a name to find the object.

See also: get-object

method (list-objects (class (eq REMOTE)) (repository T) &key test test-not)#

See also: list-objects

generic (ls-remote remote)#
(ls-remote (remote REMOTE))

Lists the current refs at the remote. Return a list of the refs described by NAME, REMOTE-OID, LOCAL-OID and a LOCAL bool that is true if the ref has a local copy.

generic (remote-url remote)#
(remote-url (remote REMOTE))

Return the url to the remote.

generic (remote-fetch-refspecs remote)#
(remote-fetch-refspecs (remote REMOTE))

Returns a list of fetch specifications for the remote.

generic (remote-push-url remote)#
(remote-push-url (remote REMOTE))
generic (remote-push-refspecs remote)#
(remote-push-refspecs (remote REMOTE))

Returns a list of push specifications of the remote.

generic (remote-push remote &key refspecs credentials)#

Perform a push.

generic (remote-connect object &key direction credentials)#
(remote-connect (remote REMOTE) &KEY (DIRECTION :FETCH) CREDENTIALS)

Opens the remote connection. The url used for the connection can be queried by GIT-URL.

The opened connection is one way, either data is retrieved from the remote, or data is send to the remote. The direction is specified with the DIRECTION argument, :FETCH is for retrieving data, :PUSH is for sending data.

generic (remote-connected-p remote)#
(remote-connected-p (remote REMOTE))

Returns t if the connection is open, nil otherwise.

generic (remote-disconnect remote)#
(remote-disconnect (remote REMOTE))

Disconnects an opened connection.

generic (remote-download remote)#
(remote-download (remote REMOTE))

Download the required packfile from the remote to bring the repository into sync.