Clone options structure
Use the GIT_CLONE_OPTIONS_INIT to get the default settings, like this:
git_clone_options opts = GIT_CLONE_OPTIONS_INIT;
checkout_opts are option 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.bare should be set to zero (false) to create a standard repo,
or non-zero for a bare repoignore_cert_errors should be set to 1 if errors validating the
remote host's certificate should be ignored.** "origin" remote options: **
remote_name is the name to be given to the "origin" remote. The
default is "origin".checkout_branch gives the name of the branch to checkout. NULL
means use the remote's HEAD.signature is the identity used when updating the reflog. NULL means to
use the default signature using the config.