3. PUT /repos/{owner}/{repo}/contents/{filename}
— Создать или обновить файл
Описание
Создаёт новый файл или обновляет существующий в указанной ветке.
Тело запроса:
{
"branch": "main",
"content": "SGVsbG8sIFdvcmxkIQ==",
"message": "Add new file",
"new_branch": "feature/new-file",
"signoff": true
}
Поле | Описание |
---|---|
branch | Ветка, в которой создаётся/обновляется файл |
content | Содержимое файла в кодировке Base64 |
message | Сообщение коммита |
new_branch | Необязательно: создание новой ветки |
signoff | Подписать коммит |
Пример запроса:
curl -X PUT "https://api.gitverse.ru/repos/dlborun/APInewTestRepo4.3/contents/hello.txt" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Accept: application/vnd.gitverse.object+json;version=1" \
-H "Content-Type: application/json" \
-d '{
"branch": "main",
"content": "SGVsbG8sIFdvcmxkIQ==",
"message": "Add hello.txt"
}'
Ответ (200 OK
):
{
"content": {
"name": "hello.txt",
"path": "hello.txt",
"sha": "abc123...",
"type": "file"
},
"commit": {
"sha": "def456...",
"url": "https://api.gitverse.ru/commits/def456..."
}
}