您可以使用libgit2克隆git存储库吗?

问题描述

| 有没有一种方法可以使用libgit2创建git repo的新克隆?从libgit2使用指南(http://libgit2.github.com/api.html),各种示例文档(http://schacon.github.com/libgit2-examples/等)和\“ repository \” 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
,然后是...?     

解决方法

不,libgit2中尚未实现。据我所知,libgit2中尚未实现任何网络协议。 libgit2仍在开发中;它对于检查操作本地存储库很有用,但对于进行网络操作尚不可用。现在,如果您想进行网络操作(例如克隆(甚至本地克隆)),则需要将Shell打包为常规的“ 3”可执行文件。     ,Libgit2确实是一个正在进行中的工作...但是看起来事情进展很快:) 现在可以从远程存储库获取。您可以在此StackOverflow答案中找到一些指向代码示例的指针。 更新资料 克隆功能刚刚合并到libgit2存储库中。 clone.h标头 示例/network/clone.c中的示例代码用法     ,我已经为libgit2的python绑定贡献了此功能;) 现在您也可以在python中克隆。
repo_path = \"git://github.com/libgit2/pygit2.git\"
path = \"/tmp/pygit2\"
repo = clone_repository(repo_path,path)
希望能帮助到你!