7

libgit2 を使用して git リポジトリの新しいクローンを作成する方法はありますか? 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リポジトリディレクトリを開くか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 に答える