Конечные точки REST API для больших двоичных объектов Git
Большой двоичный объект Git — это тип объекта, используемый для хранения содержимого каждого файла в репозитории. Хэш SHA-1 файла вычисляется и хранится в большом двоичном объекте. Эти конечные точки позволяют считывать и записывать объекты BLOB-объектов в базу данных Git на . Большие двоичные объекты используют эти пользовательские типы данных. Дополнительные сведения об использовании типов носителей в API см. в разделе Начало работы с REST API.
Подробные маркеры доступа для "Create a blob
Эта конечная точка работает со следующими точными типами маркеров:
- Маркеры доступа пользователей приложения
- Маркеры доступа к установке приложений
- Точные личные маркеры доступа
Маркер с точной детализацией должен иметь следующий набор разрешений.:
- "Contents" repository permissions (write)
Параметры для "Create a blob"
Имя., Тип, Description |
---|
accept stringSetting to |
Имя., Тип, Description |
---|
owner string Обязательное полеThe account owner of the repository. The name is not case sensitive. |
repo string Обязательное полеThe name of the repository without the |
Имя., Тип, Description |
---|
content string Обязательное полеThe new blob's content. |
encoding stringThe encoding used for По умолчанию.: |
Коды состояния http-ответа для "Create a blob"
Код состояния | Описание |
---|---|
201 | Created |
403 | Forbidden |
404 | Resource not found |
409 | Conflict |
422 | Validation failed |
Примеры кода для "Create a blob"
Если вы обращаетесь к в GHE.com, замените api..com
выделенный поддомен api.SUBDOMAIN.ghe.com
предприятия.
Пример запроса
curl -L \ -X POST \ -H "Accept: application/vnd.+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X--Api-Version: 2022-11-28" \ https://api..com/repos/OWNER/REPO/git/blobs \ -d '{"content":"Content of the blob","encoding":"utf-8"}'
Response
Status: 201
{ "url": "https://api..com/repos/octocat/example/git/blobs/3a0f86fb8db8eea7ccbb9a95f325ddbedfb25e15", "sha": "3a0f86fb8db8eea7ccbb9a95f325ddbedfb25e15" }
The content
in the response will always be Base64 encoded.
This endpoint supports the following custom media types. For more information, see "Media types."
application/vnd..raw+json
: Returns the raw blob data.application/vnd.+json
: Returns a JSON representation of the blob withcontent
as a base64 encoded string. This is the default if no media type is specified.
Note This endpoint supports blobs up to 100 megabytes in size.
Подробные маркеры доступа для "Get a blob
Эта конечная точка работает со следующими точными типами маркеров:
- Маркеры доступа пользователей приложения
- Маркеры доступа к установке приложений
- Точные личные маркеры доступа
Маркер с точной детализацией должен иметь следующий набор разрешений.:
- "Contents" repository permissions (read)
Эту конечную точку можно использовать без проверки подлинности или указанных выше разрешений, если запрашиваются только общедоступные ресурсы.
Параметры для "Get a blob"
Имя., Тип, Description |
---|
accept stringSetting to |
Имя., Тип, Description |
---|
owner string Обязательное полеThe account owner of the repository. The name is not case sensitive. |
repo string Обязательное полеThe name of the repository without the |
file_sha string Обязательное поле |
Коды состояния http-ответа для "Get a blob"
Код состояния | Описание |
---|---|
200 | OK |
403 | Forbidden |
404 | Resource not found |
409 | Conflict |
422 | Validation failed, or the endpoint has been spammed. |
Примеры кода для "Get a blob"
Если вы обращаетесь к в GHE.com, замените api..com
выделенный поддомен api.SUBDOMAIN.ghe.com
предприятия.
Пример запроса
curl -L \ -H "Accept: application/vnd.+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X--Api-Version: 2022-11-28" \ https://api..com/repos/OWNER/REPO/git/blobs/FILE_SHA
Response
Status: 200
{ "content": "Q29udGVudCBvZiB0aGUgYmxvYg==", "encoding": "base64", "url": "https://api..com/repos/octocat/example/git/blobs/3a0f86fb8db8eea7ccbb9a95f325ddbedfb25e15", "sha": "3a0f86fb8db8eea7ccbb9a95f325ddbedfb25e15", "size": 19, "node_id": "Q29udGVudCBvZiB0aGUgYmxvYg==" }