Большие двоичные объекты Git
Используйте REST API для взаимодействия с blob-объектом Git (большим двоичным объектом), типом объекта, используемым для хранения содержимого каждого файла в репозитории.
Сведения о BLOB-объектах Git
Большой двоичный объект Git — это тип объекта, используемый для хранения содержимого каждого файла в репозитории. Хэш SHA-1 файла вычисляется и хранится в большом двоичном объекте. Эти конечные точки позволяют считывать большие двоичные объекты из базы данных Git в GitHub и записывать их в него. Большие двоичные объекты используют эти пользовательские типы данных. Дополнительные сведения об использовании типов мультимедиа в API см. здесь.
Пользовательские типы данных для больших двоичных объектов
Это поддерживаемые типы данных для больших двоичных объектов.
application/json
application/vnd.github.raw
Дополнительные сведения см. в разделе Типы мультимедиа.
Create a blob
Параметры для "Create a blob"
Заголовки |
---|
Имя, Тип, Описание |
accept string Setting to |
Параметры пути |
Имя, Тип, Описание |
owner string ОбязательноThe account owner of the repository. The name is not case sensitive. |
repo string ОбязательноThe name of the repository. The name is not case sensitive. |
Параметры запроса |
Имя, Тип, Описание |
content string ОбязательноThe new blob's content. |
encoding string The encoding used for По умолчанию: |
Коды состояния HTTP-ответа для "Create a blob"
Код состояния | Описание |
---|---|
201 | Created |
403 | Forbidden |
404 | Resource not found |
409 | Conflict |
422 | Validation failed, or the endpoint has been spammed. |
Примеры кода для "Create a blob"
curl -L \
-X POST \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>"\
-H "X-GitHub-Api-Version: 2022-11-28" \
https://api.github.com/repos/OWNER/REPO/git/blobs \
-d '{"content":"Content of the blob","encoding":"utf-8"}'
Response
Status: 201
{
"url": "https://api.github.com/repos/octocat/example/git/blobs/3a0f86fb8db8eea7ccbb9a95f325ddbedfb25e15",
"sha": "3a0f86fb8db8eea7ccbb9a95f325ddbedfb25e15"
}
Get a blob
The content
in the response will always be Base64 encoded.
Note: This API supports blobs up to 100 megabytes in size.
Параметры для "Get a blob"
Заголовки |
---|
Имя, Тип, Описание |
accept string Setting to |
Параметры пути |
Имя, Тип, Описание |
owner string ОбязательноThe account owner of the repository. The name is not case sensitive. |
repo string ОбязательноThe name of the repository. The name is not case sensitive. |
file_sha string Обязательно |
Коды состояния HTTP-ответа для "Get a blob"
Код состояния | Описание |
---|---|
200 | OK |
403 | Forbidden |
404 | Resource not found |
422 | Validation failed, or the endpoint has been spammed. |
Примеры кода для "Get a blob"
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>"\
-H "X-GitHub-Api-Version: 2022-11-28" \
https://api.github.com/repos/OWNER/REPO/git/blobs/FILE_SHA
Response
Status: 200
{
"content": "Q29udGVudCBvZiB0aGUgYmxvYg==",
"encoding": "base64",
"url": "https://api.github.com/repos/octocat/example/git/blobs/3a0f86fb8db8eea7ccbb9a95f325ddbedfb25e15",
"sha": "3a0f86fb8db8eea7ccbb9a95f325ddbedfb25e15",
"size": 19,
"node_id": "Q29udGVudCBvZiB0aGUgYmxvYg=="
}