Публичный APIБаза данных Git2. POST /repos/{owner}/{repo}/git/commits - создать коммит

2. POST /repos/{owner}/{repo}/git/commits — cоздать коммит

Beta

Описание

Создает новый объект коммита в репозитории. Требуется указать дерево, родителей и сообщение.

URL

POST /public/api/repos/{username}/{reponame}/git/commits

Примечание. В спецификации используются параметры {username}/{reponame}, которые семантически эквивалентны {owner}/{repo}.

Параметры

ИмяТипОбязательноОписание
usernamestringДаВладелец репозитория.
reponamestringДаНазвание репозитория.
bodyobjectДаПараметры коммита.

Тело запроса

{
  "message": "feat: добавлен новый модуль",
  "tree": "a1b2c3d4...",
  "parents": ["f5e4d3c2..."],
  "author": {
    "name": "Иван Петров",
    "email": "ivan@example.com",
    "date": "2025-04-05T12:00:00Z"
  },
  "committer": {
    "name": "CI Bot",
    "email": "bot@ci.gitverse.ru",
    "date": "2025-04-05T12:00:00Z"
  }
}

Заголовки

Authorization: Bearer <your-api-token>
Content-Type: application/json
Accept: application/vnd.gitverse.object+json;version=1

Ответ (201 Created)

{
  "sha": "c9b8e7d6...",
  "url": "https://gitverse.ru/api/...",
  "commit": {
    "message": "feat: добавлен новый модуль",
    "tree": { "sha": "a1b2c3d4..." },
    "author": { "name": "Иван Петров", "email": "ivan@example.com" },
    "committer": { "name": "CI Bot", "email": "bot@ci.gitverse.ru" }
  },
  "parents": [
    { "sha": "f5e4d3c2..." }
  ]
}

Возможные коды ответа

  • 201 Created. — Коммит успешно создан.
  • 400 Bad Request. — Ошибка в переданных данных.
  • 404 Not Found. — Репозиторий не найден.
  • 422 Unprocessable Entity. — Указаны неверные SHA родителей или дерева.
  • 500 Internal Server Error. — Внутренняя ошибка сервера.