diff options
author | Ben Straub <bstraub@github.com> | 2012-06-15 13:14:43 -0700 |
---|---|---|
committer | Ben Straub <bstraub@github.com> | 2012-06-21 09:53:44 -0700 |
commit | 764df57e82c337a70f55e320bf31acb50c6ffacd (patch) | |
tree | 8d8deca8f9c6a4d8fe67e2ab715725e8da34c5af /include/git2/clone.h | |
parent | 9311423c34bbd369928152c6a2b669204276ddd1 (diff) | |
download | libgit2-764df57e82c337a70f55e320bf31acb50c6ffacd.tar.gz |
Add git_clone and git_clone_bare.
So far they only create a repo, setup the "origin"
remote, and fetch. The API probably needs work as
well; there's no way to get progress information
at this point.
Also uncovered a shortcoming; git_remote_download
doesn't fetch over local transport.
Diffstat (limited to 'include/git2/clone.h')
-rw-r--r-- | include/git2/clone.h | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/include/git2/clone.h b/include/git2/clone.h new file mode 100644 index 00000000..7936282f --- /dev/null +++ b/include/git2/clone.h @@ -0,0 +1,45 @@ +/* + * Copyright (C) 2012 the libgit2 contributors + * + * This file is part of libgit2, distributed under the GNU GPL v2 with + * a Linking Exception. For full terms see the included COPYING file. + */ +#ifndef INCLUDE_git_clone_h__ +#define INCLUDE_git_clone_h__ + +#include "common.h" +#include "types.h" + + +/** + * @file git2/clone.h + * @brief Git cloning routines + * @defgroup git_clone Git cloning routines + * @ingroup Git + * @{ + */ +GIT_BEGIN_DECL + +/** + * TODO + * + * @param out pointer that will receive the resulting repository object + * @param origin_url repository to clone from + * @param dest_path local directory to clone to + * @return 0 on success, GIT_ERROR otherwise (use git_error_last for information about the error) + */ +GIT_EXTERN(int) git_clone(git_repository **out, const char *origin_url, const char *dest_path); + +/** + * TODO + * + * @param out pointer that will receive the resulting repository object + * @param origin_url repository to clone from + * @param dest_path local directory to clone to + * @return 0 on success, GIT_ERROR otherwise (use git_error_last for information about the error) + */ +GIT_EXTERN(int) git_clone_bare(git_repository **out, const char *origin_url, const char *dest_path); + +/** @} */ +GIT_END_DECL +#endif |