我使用這個API來更新我的回購協議文件,它要求我有一個文件的有效SHA斑點,我想更新:如何找到一個Github上文件的SHA一滴
http://developer.github.com/v3/repos/contents/
如何找到特定文件的SHA blob?在我的testrepo測試帳戶中假設,test.txt文件的SHA blob是什麼?
https://github.com/testacc01/testrepo01
太謝謝你了!
我使用這個API來更新我的回購協議文件,它要求我有一個文件的有效SHA斑點,我想更新:如何找到一個Github上文件的SHA一滴
http://developer.github.com/v3/repos/contents/
如何找到特定文件的SHA blob?在我的testrepo測試帳戶中假設,test.txt文件的SHA blob是什麼?
https://github.com/testacc01/testrepo01
太謝謝你了!
用於更新文件的文檔指定您將需要爲將要替換的文件提供SHA。最簡單的方法也是查詢github。例如:
> curl https://api.github.com/repos/testacc01/testrepo01/contents/test.txt
{
"name": "test.txt",
"path": "test.txt",
"sha": "4f8a0fd8ab3537b85a64dcffa1487f4196164d78",
"size": 13,
…
因此,您可以看到SHA在JSON響應的「sha」字段中的含義。當你制定你的請求來更新新版本的文件時使用它。成功更新文件後,該文件將有一個新的SHA,您需要請求才能重新更新。 (除非,我想,你的下一個更新的推移不同的分支。)
如果使用GraphQL API v4,您可以使用以下方法來找到特定文件的SHA:
{
repository(owner: "testacc01", name: "testrepo01") {
object(expression: "master:test.txt") {
... on Blob {
oid
}
}
}
}
感謝這對我有用,我忘記了文件更新後SHA會自動更新。 – Kiddo
我無法在GitHub的v3 API文檔中找到它們用於生成這些特定SHA哈希函數(SHA1,SHA256等)(以便我可以自己驗證文件內容)。我相信git使用SHA-1提交散列,但是我不清楚哪一個散列函數GitHub用於散列文件內容。我向他們開了一張請求這些信息的票。 –