Blobs do Git
Use a API REST para interagir com um Git blob (objeto binário grande), o tipo de objeto usado para armazenar o conteúdo de cada arquivo em um repositório.
Sobre blobs do Git
Um blob (objeto binário grande) do Git é o tipo de objeto usado para armazenar o conteúdo de cada arquivo em um repositório. O hash SHA-1 do arquivo é calculado e armazenado no objeto do blob. Esses pontos de extremidade permitem que você leia e grave objetos de blob no banco de dados do Git no GitHub Enterprise Server. Os blobs aproveitam estes tipos de mídia personalizados. Leia mais sobre o uso de tipos de mídia na API aqui.
Tipos de mídia personalizados para os blobs
Estes são os tipos de mídia compatíveis com blobs.
application/json
application/vnd.github.raw
Para obter mais informações, confira "Tipos de mídia".
Create a blob
Parâmetros para "Create a blob"
Cabeçalhos |
---|
Name, Tipo, Descrição |
accept string Setting to |
Parâmetros de caminho |
Name, Tipo, Descrição |
owner string ObrigatórioThe account owner of the repository. The name is not case sensitive. |
repo string ObrigatórioThe name of the repository. The name is not case sensitive. |
Parâmetros do corpo |
Name, Tipo, Descrição |
content string ObrigatórioThe new blob's content. |
encoding string The encoding used for Padrão: |
Códigos de status de resposta HTTP para "Create a blob"
Código de status | Descrição |
---|---|
201 | Created |
403 | Forbidden |
404 | Resource not found |
409 | Conflict |
422 | Validation failed, or the endpoint has been spammed. |
Exemplos de código para "Create a blob"
curl -L \
-X POST \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/repos/OWNER/REPO/git/blobs \
-d '{"content":"Content of the blob","encoding":"utf-8"}'
Response
Status: 201
{
"url": "https://HOSTNAME/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.
Parâmetros para "Get a blob"
Cabeçalhos |
---|
Name, Tipo, Descrição |
accept string Setting to |
Parâmetros de caminho |
Name, Tipo, Descrição |
owner string ObrigatórioThe account owner of the repository. The name is not case sensitive. |
repo string ObrigatórioThe name of the repository. The name is not case sensitive. |
file_sha string Obrigatório |
Códigos de status de resposta HTTP para "Get a blob"
Código de status | Descrição |
---|---|
200 | OK |
403 | Forbidden |
404 | Resource not found |
422 | Validation failed, or the endpoint has been spammed. |
Exemplos de código para "Get a blob"
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/repos/OWNER/REPO/git/blobs/FILE_SHA
Response
Status: 200
{
"content": "Q29udGVudCBvZiB0aGUgYmxvYg==",
"encoding": "base64",
"url": "https://HOSTNAME/repos/octocat/example/git/blobs/3a0f86fb8db8eea7ccbb9a95f325ddbedfb25e15",
"sha": "3a0f86fb8db8eea7ccbb9a95f325ddbedfb25e15",
"size": 19,
"node_id": "Q29udGVudCBvZiB0aGUgYmxvYg=="
}