web-dev-qa-db-ja.com

Githubファイルの検索方法SHA blob

このAPIを使用してリポジトリ上のファイルを更新していますが、更新するファイルの有効なSHA blobが必要です。

http://developer.github.com/v3/repos/contents/

特定のファイルのSHA blobを見つけるにはどうすればよいですか?ここのテストアカウントのtestrepoで想定されている、test.txtのSHA blobは何ですか?ファイル?

https://github.com/testacc01/testrepo01

どうもありがとうございます!

23
Kiddo

ファイルを更新するためのドキュメントでは、置き換えるファイルにSHA)を指定する必要があると指定されています。最も簡単な方法は、githubにクエリを実行することです。例:

> curl https://api.github.com/repos/testacc01/testrepo01/contents/test.txt
{
  "name": "test.txt",
  "path": "test.txt",
  "sha": "4f8a0fd8ab3537b85a64dcffa1487f4196164d78",
  "size": 13,
 …

したがって、JSON応答の「sha」フィールドにSHAが何であるかを確認できます。これを使用して、ファイルを新しいバージョンで更新するリクエストを作成します。正常に更新した後ファイルの場合、ファイルには新しいSHAがあり、再度更新する前にリクエストする必要があります(ただし、次の更新が別のブランチで行われる場合を除きます)。

16
user3033893

GraphQL API v4 を使用する場合、以下を使用して特定のファイルのshaを見つけることができます。

{
  repository(owner: "testacc01", name: "testrepo01") {
    object(expression: "master:test.txt") {
      ... on Blob {
        oid
      }
    }
  }
}

エクスプローラーで試してみてください

4
Bertrand Martel