2016-04-11 9 views
1

v3 APIを使用してGithubからのようなtarballを取得しています。LFSファイルを含むzipball/tarballをダウンロードするGithub API

しかし、このプロジェクトは、いくつかのファイルのためのGit-LFSを使用し、そして得られたアーカイブファイルが、LFSのリンクが含まれていません:

version https://git-lfs.github.com/spec/v1 
oid sha256:fc03a2eadf6ac4872de8ad96a865ed05c45c416c5ad40c9efa3c4bcbe5d0dc9e 
size 1284 

私が持っアーカイブを取得するために何ができます実際のファイル内容で置き換えられたLFSリンク?

答えて

2

Git-lfs APIは、どのようにリクエストを行うかを示します。

POST https://github.com/your-account/your-repo/objectsようなもので: - それはだ

{ 
    "operation": "download", 
    "objects": [ 
     { 
     "oid": "fc03a2eadf6ac4872de8ad96a865ed05c45c416c5ad40c9efa3c4bcbe5d0dc9e", 
     "size": 1284 
     } 
    ] 
} 

たぶん、あなたはsize一部をOMMITすることができ、あなたが探しているOID(それはpointerに保存されている)を知っている必要がありますと仮定し、あなたのケースで 、本当に指定されていません。また、あなたはbatch request

に応答がthisようになりますし、彼らが存在しないか、それらのそれぞれのためのいくつかのエラー(全体としての応答は常に200として返す場合、ブロブ自分自身にダウンロードリンクが含まれています一緒にいくつかのOIDsを要求することができますあなたが認証されている場合)。

+0

アーカイブを開いて、LFSポインタのように見えるファイルをすべてスキャンし、ダウンロードしたファイルに置き換える必要があると思います。私はそれを正しくしていますか? – madprog

+1

これは聞こえるほど醜いので、私はそう思っています。なぜなら、あなたはこのユースケース(またはそれを考えましたが、まだそれを実装していませんでした)のように思われないからです。あなたのユースケースは何ですか?おそらく、あなたは 'git clone'レポをしてから自分でタールするのが良いでしょうか? – danf

+0

ビルドマシンにGitをインストールすることは避けたかったのですが、git-lfsをインストールする必要があると思います。 – madprog

関連する問題