libgit2

git_checkout_head

Version:

Updates files in the index and the working tree to match the content of the commit pointed at by HEAD.

Note that this is not the correct mechanism used to switch branches; do not change your HEAD and then call this method, that would leave you with checkout conflicts since your working directory would then appear to be dirty. Instead, checkout the target of the branch and then update HEAD using git_repository_set_head to point to the branch you checked out.

Signature

int git_checkout_head(git_repository *repo, const git_checkout_options *opts);

Parameters

In
repo

repository to check out (must be non-bare)

In
opts

specifies checkout options (may be NULL)

Returns

int

0 on success, GIT_EUNBORNBRANCH if HEAD points to a non existing branch, non-zero value returned by notify_cb, or other error code < 0 (use git_error_last for error details)

Versions