7

有没有办法使用 libgit2 创建一个新的 git repo 克隆?来自 libgit2 使用指南(http://libgit2.github.com/api.html)、各种示例文档(http://schacon.github.com/libgit2-examples/ 等)和“存储库”libgit2 api 文档(http://libgit2.github.com/libgit2/group__git__repository.html)和其他阅读...我只看到对打开现有 git repo 目录git_repository_open或创建新目录的引用git_repository_init

我有什么明显的遗漏吗?也许“git clone GIT-REPO-URL”的api等价物git_repository_init后面跟着...?

4

3 回答 3

26

Libgit2确实是一项正在进行的工作......但看起来事情进展得很快:)

现在可以从远程存储库中获取。您可以在此 StackOverflow 答案中找到一些指向代码示例的指针。

更新

克隆功能刚刚合并到 libgit2 存储库中。

于 2011-12-18T18:32:28.703 回答
6

我已经将此功能贡献给了 libgit2 的 python 绑定;)

现在你也可以在 python 中克隆。

repo_path = "git://github.com/libgit2/pygit2.git"
path = "/tmp/pygit2"
repo = clone_repository(repo_path, path)

希望能帮助到你!

于 2013-05-28T18:22:42.243 回答
3

不,这还没有在 libgit2 中实现。据我所知,libgit2 中还没有实现任何网络协议。libgit2 仍在进行中;它对于检查操作本地存储库很有用,但不适用于进行网络操作。目前,如果您想进行克隆(甚至本地克隆)之类的网络操作,您只需要使用常规git可执行文件即可。

于 2011-04-15T17:37:09.753 回答