2017-10-06 12 views
2

httpでgit bundleをクローンすることはできますか? 私はこれをしようとすると、私が得た:私は知っているそれをする理由は、サーバ上のリポジトリを圧縮しないようにすることですhttpでのgit bundleのクローニング

$ git clone http://127.0.0.1:8888/repo.bundle 
Cloning into 'repo.bundle'... 
fatal: repository 'http://127.0.0.1:8888/repo.bundle/' not found 

(単にファイルを提供)、我々は、ユーザーのアプリケーション

答えて

1

によってgit cloneに限定されていますあなたが尋ねることをする方法はありません。バンドルの本来の目的は、リポジトリへの「オンライン」アクセス(例えば、HTTP接続など)が利用できない場合を補うことです。このようなユースケースには何らかの考えが与えられているとは思えません。

転送する必要があると予想されるリポジトリのサブセットを準備することが必要なので、そのサブセットの要求では、追加データを転送するか、必要でないデータを転送するコストがかかりません。その場合は、バンドルではなく浅いクローンを準備することを検討します。浅いクローンからフェッチされる各ヘッドの履歴には、フェッチを実行するレポに少なくとも1つのコミットが含まれていなければならないことに注意してください。だから、例えば、あなたが

x -- x -- ... huge history ... -- O -- x -- x <--(master) 
            \ 
            A -- B -- C <--(some_branch) 

があり、このような方法でCを通じてAを共有したいとしている場合、あなたは

git clone --depth=4 -b some_branch url/of/origin some_branch_repo 

深さが4であるので

、これは OABが含まれます、 C - some_branchのフェッチには ACを受け取ることができます。

関連する問題