libgit2

git_clone_options

Version:

Clone options structure

Use the GIT_CLONE_OPTIONS_INIT to get the default settings, like this:

git_clone_options opts = GIT_CLONE_OPTIONS_INIT;

Signature

typedef struct git_clone_options { unsigned int version git_checkout_options checkout_opts git_remote_callbacks remote_callbacks int bare git_clone_local_t local const char *checkout_branch git_signature *signature git_repository_create_cb repository_cb void *repository_cb_payload git_remote_create_cb remote_cb void *remote_cb_payload };

Members

unsigned int
version
checkout_opts

These options are passed to the checkout step. To disable checkout, set the checkout_strategy to GIT_CHECKOUT_NONE. Generally you will want the use GIT_CHECKOUT_SAFE_CREATE to create all files in the working directory for the newly cloned repository.

remote_callbacks

Callbacks to use for reporting fetch progress, and for acquiring credentials in the event they are needed. This parameter is ignored if the remote_cb parameter is set; if you provide a remote creation callback, then you have the opportunity to configure remote callbacks in provided function.

int
bare

Set to zero (false) to create a standard repo, or non-zero for a bare repo

local

Whether to use a fetch or copy the object database.

const char *
checkout_branch

The name of the branch to checkout. NULL means use the remote's default branch.

signature

The identity used when updating the reflog. NULL means to use the default signature using the config.

repository_cb

A callback used to create the new repository into which to clone. If NULL, the 'bare' field will be used to determine whether to create a bare repository.

void *
repository_cb_payload

An opaque payload to pass to the git_repository creation callback. This parameter is ignored unless repository_cb is non-NULL.

remote_cb

A callback used to create the git_remote, prior to its being used to perform the clone operation. See the documentation for git_remote_create_cb for details. This parameter may be NULL, indicating that git_clone should provide default behavior.

void *
remote_cb_payload

An opaque payload to pass to the git_remote creation callback. This parameter is ignored unless remote_cb is non-NULL.

Parameter To

Versions