你能用libgit2克隆一个git存储库吗?

Tre*_*ick 7 git libgit2

有没有办法使用libgit2创建一个git仓库的新克隆?从libgit2使用指南(http://libgit2.github.com/api.html),各种示例docs(http://schacon.github.com/libgit2-examples/ 等)和"repository"libgit2 api docs (http://libgit2.github.com/libgit2/group__git__repository.html)和其他阅读......我只看到打开现有git repo目录git_repository_open或创建新目录的引用git_repository_init.

有什么明显的东西我不见了吗?也许api相当于"git clone GIT-REPO-URL" git_repository_init之后是......?

nul*_*ken 25

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

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

更新

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


小智 5

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

现在你也可以在python中克隆了.

repo_path = "git://github.com/libgit2/pygit2.git"
path = "/tmp/pygit2"
repo = clone_repository(repo_path, path)
Run Code Online (Sandbox Code Playgroud)

希望能帮助到你!


Bri*_*ell 3

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

  • 现在对克隆和裸克隆有了基本的支持。 (4认同)