GitHub API は、リポジトリのリリースのリストと、各リリースが作成された日付を返すことができますか?
「リリース」API が予期しない動作をしています。たとえば、Rails のリリースが 0 です。
>> curl https://api.github.com/repos/rails/rails/releases
[
]
さらに、リリースがアルファ版、ベータ版、または安定版かどうかを知る方法はありますか?
GitHub API は、リポジトリのリリースのリストと、各リリースが作成された日付を返すことができますか?
「リリース」API が予期しない動作をしています。たとえば、Rails のリリースが 0 です。
>> curl https://api.github.com/repos/rails/rails/releases
[
]
さらに、リリースがアルファ版、ベータ版、または安定版かどうかを知る方法はありますか?
特にリリースはできないと思います。ただし、タグは取得できます。
curl https://api.github.com/repos/rails/rails/tags
ソース: http://developer.github.com/v3/repos/#list-tags
編集:
彼らは本日、リリース API をリリースしました。
この質問は古いですが、Google はまだ私をここに導いており、回答は古くなっています。したがって、ここにいる他の人のために:
GitHub は、リリース エンドポイントを追加しました: https://docs.github.com/en/rest/reference/releases
(経由で)取得する例curl
:
curl https://api.github.com/repos/rails/rails/releases
/releases
リポジトリのエンドポイントはありません (まだ?)。そのようなものを漠然と取得する唯一の方法は、リストタグの @kristenmills の回答を使用することです。これが現在、GitHub のサイトでリリースが生成されている方法であり、何がリリースされたかを正確に判断できる方法です。
GitHub のリリースには、アセットを添付できます。それぞれにリンクできますが、最新リリースのアセットにはリンクできません。
次の 2 つのオプションがあります。
シェル コマンドを活用し、結果をパイプして github からの応答を解析します。例:
curl https://api.github.com/repos/direnv/direnv/releases/latest \
| jq -r '.assets[] | select(.browser_download_url | contains("linux-amd64")) | .browser_download_url'
応答
https://github.com/direnv/direnv/releases/download/v2.28.0/direnv.linux-amd64
オプション 2: gitreleases.dev などのサードパーティ サービスを使用する
Git リリース リンクを使用すると、新しいリリースが行われるたびに、新しいダウンロード リンクで README または公開 Web サイトの更新をスキップできます。代わりに、常に正しい場所を指します。