GitFlic API
Ветки
Описание структуры JSON-объекта, описывающего ветку
Поле | Тип | Описание |
---|---|---|
name |
String | Название ветки |
fullName |
String | Полное имя ветки |
lastCommit |
Object | Последний коммит |
default |
Boolean | Дефолтная ветка |
merged |
Boolean | Смердижная ветка |
work |
Boolean | Рабочая ветка |
GET /project/{userAlias}/{projectAlias}/branch
Запрос возвращает массив всех веток, есть возможность настройки количества отображаемых объектов на странице
Запрос | Описание |
---|---|
GET /project/{userAlias}/{projectAlias}/branch |
Список веток |
Переменная пути запроса | Тип | Описание |
---|---|---|
userAlias |
String | Псевдоним пользователя |
projectAlias |
String | Псевдоним проекта |
Responses
STATUS 200
пример JSON:
{
"_embedded": {
"branchList": [
{
"name": "compareBranch",
"fullName": "refs/heads/compareBranch",
"lastCommit": {
"hash": "01baf9f63e0060a396f4ea69fab8b1cb3afa683c",
"message": "Commit\n",
"shortMessage": "Commit",
"createdAt": "2022-04-26T13:38:14Z",
"committerIdent": {
"name": "User",
"avatar": "/static/image/avatar.jpg",
"emailAddress": "user@gmail.com",
"when": "2022-04-26T13:38:14Z"
},
"authorIdent": {
"name": "User",
"avatar": "/static/image/avatar.jpg",
"emailAddress": "user@gmail.com",
"when": "2022-04-26T13:38:14Z"
},
"user": {
"id": "a10b86a3-c8d7-46cc-9cdb-cea3dd8b6073",
"username": "user",
"name": name,
"surname": surname,
"fullName": "name surname",
"avatar": "https://gitflic.ru/upload/img/d67527fd-fce4-408f-8109-6269d204abe6.jpg"
}
},
"default": false,
"merged": false,
"work": false
},
{
"name": "newBranch",
"fullName": "refs/heads/newBranch",
"lastCommit": {
"hash": "bfeeb9719fa590de7eb4742cd2b99186dba14f82",
"message": "initttt\n",
"shortMessage": "initttt",
"createdAt": "2022-05-05T13:19:01Z",
"committerIdent": {
"name": "Ivan Ivanov",
"avatar": "/static/image/avatar.jpg",
"emailAddress": "user@mail.ru",
"when": "2022-05-05T13:19:01Z"
},
"authorIdent": {
"name": "Ivan Ivanov",
"avatar": "/static/image/avatar.jpg",
"emailAddress": "user@mail.ru",
"when": "2022-05-05T13:19:01Z"
},
"user": {
"id": "a10b86a3-c8d7-46cc-9cdb-cea3dd8b6073",
"username": "user",
"name": name,
"surname": surname,
"fullName": "name surname",
"avatar": "https://gitflic.ru/upload/img/d67527fd-fce4-408f-8109-6269d204abe6.jpg"
}
},
"default": false,
"merged": false,
"work": false
}
]
},
"page": {
"size": 10,
"totalElements": 2,
"totalPages": 1,
"number": 0
}
}
STATUS 403
- Нет прав для доступа.
STATUS 404
- Данные по запросу не найдены.
GET /project/{userAlias}/{projectAlias}/branch/{branchName}
Запрос возвращает информацию о ветке
Запрос | Описание |
---|---|
GET /project/{userAlias}/{projectAlias}/branch/{branchName} |
Информация о ветке |
Переменная пути запроса | Тип | Описание |
---|---|---|
userAlias |
String | Псевдоним пользователя |
projectAlias |
String | Псевдоним проекта |
branchName |
String | Название ветки |
Responses
STATUS 200
пример JSON:
{ "name": "compareBranch", "fullName": "refs/heads/compareBranch", "lastCommit": { "hash": "01baf9f63e0060a396f4ea69fab8b1cb3afa683c", "message": "Commit\n", "shortMessage": "Commit", "createdAt": "2022-04-26T13:38:14Z", "committerIdent": { "name": "User", "avatar": "/static/image/avatar.jpg", "emailAddress": "user@gmail.com", "when": "2022-04-26T13:38:14Z" }, "authorIdent": { "name": "User", "avatar": "/static/image/avatar.jpg", "emailAddress": "user@gmail.com", "when": "2022-04-26T13:38:14Z" }, "user": { "id": "a10b86a3-c8d7-46cc-9cdb-cea3dd8b6073", "username": "user", "name": name, "surname": subname, "fullName": "name subname", "avatar": "https://gitflic.ru/upload/img/d67527fd-fce4-408f-8109-6269d204abe6.jpg" } }, "default": false, "merged": false, "work": false }
STATUS 403
- Нет прав для доступа.
STATUS 404
- Данные по запросу не найдены.
GET /project/{userAlias}/{projectAlias}/branch/default
Запрос возвращает дефолтную ветку
Запрос | Описание |
---|---|
GET /project/{userAlias}/{projectAlias}/branch/default |
Информация о дефолтной ветке |
Переменная пути запроса | Тип | Описание |
---|---|---|
userAlias |
String | Псевдоним пользователя |
projectAlias |
String | Псевдоним проекта |
Responses STATUS 200
пример JSON:
{ "name": "compareBranch", "fullName": "refs/heads/compareBranch", "lastCommit": { "hash": "01baf9f63e0060a396f4ea69fab8b1cb3afa683c", "message": "Commit\n", "shortMessage": "Commit", "createdAt": "2022-04-26T13:38:14Z", "committerIdent": { "name": "User", "avatar": "/static/image/avatar.jpg", "emailAddress": "user@gmail.com", "when": "2022-04-26T13:38:14Z" }, "authorIdent": { "name": "User", "avatar": "/static/image/avatar.jpg", "emailAddress": "user@gmail.com", "when": "2022-04-26T13:38:14Z" }, "user": { "id": "a10b86a3-c8d7-46cc-9cdb-cea3dd8b6073", "username": "user", "name": name, "surname": subname, "fullName": "name subname", "avatar": "https://gitflic.ru/upload/img/d67527fd-fce4-408f-8109-6269d204abe6.jpg" } }, "default": true, "merged": false, "work": false }
STATUS 403
- Нет прав для доступа.
STATUS 404
- Данные по запросу не найдены.
GET /project/{userAlias}/{projectAlias}/branch/compare?compare={compareBranch}&base={baseBranch}
Сравнение веток, запрос возвращает массив измененных файлов
Запрос | Описание |
---|---|
GET /project/{userAlias}/{projectAlias}/branch/compare?compare={compareBranch}&base={baseBranch} |
Сравнение веток |
Переменная пути запроса | Тип | Описание |
---|---|---|
userAlias |
String | Псевдоним пользователя |
projectAlias |
String | Псевдоним проекта |
compareBranch |
String | Название сравниваемой ветки (Обязательный параметр) |
baseBranch |
String | Базовая ветка для сравнения (Необязательный параметр), в случае отсутствия данного параметра берется дефолтная ветка |
Responses STATUS 200
пример JSON:
[ { "id": "e4f732276a7f7029f3c8cc69cfb72050d7ac7315d3148ab6755ff796aafefa6f", "newMode": "100644", "oldMode": "0", "newPath": "zzzz.txt", "oldPath": "/dev/null", "lastCommit": null, "addedLinesCount": 16, "removedLinesCount": 0, "fileName": "zzzz.txt", "filePath": "zzzz.txt", "fileExtension": "txt", "isImg": false, "isCollapsed": false, "isLarge": false, "isBinary": false, "changeType": null, "headers": [ "diff --git a/zzzz.txt b/zzzz.txt", "new file mode 100644", "index 0000000..6ac4b12", "--- /dev/null", "+++ b/zzzz.txt" ], "lines": [ { "id": "e4f732276a7f7029f3c8cc69cfb72050d7ac7315d3148ab6755ff796aafefa6f-0-1-separator", "body": "@@ -0,0 +1,16 @@", "highLightBody": "<span class=\"hljs-meta\">@ -0,0 +1,16 @@</span>", "addLineNumber": null, "removeLineNumber": null, "op": "none", "type": "separator", "links": [] }, { "id": "e4f732276a7f7029f3c8cc69cfb72050d7ac7315d3148ab6755ff796aafefa6f-0-1", "body": "+rewe", "highLightBody": "rewe", "addLineNumber": 1, "removeLineNumber": null, "op": "add", "type": "line", "links": [] }, { "id": "e4f732276a7f7029f3c8cc69cfb72050d7ac7315d3148ab6755ff796aafefa6f-0-2", "body": "+\\wqe", "highLightBody": "\\wqe", "addLineNumber": 2, "removeLineNumber": null, "op": "add", "type": "line", "links": [] }, { "id": "e4f732276a7f7029f3c8cc69cfb72050d7ac7315d3148ab6755ff796aafefa6f-0-3", "body": "+q", "highLightBody": "q", "addLineNumber": 3, "removeLineNumber": null, "op": "add", "type": "line", "links": [] }, { "id": "e4f732276a7f7029f3c8cc69cfb72050d7ac7315d3148ab6755ff796aafefa6f-0-4", "body": "+eqw", "highLightBody": "eqw", "addLineNumber": 4, "removeLineNumber": null, "op": "add", "type": "line", "links": [] }, { "id": "e4f732276a7f7029f3c8cc69cfb72050d7ac7315d3148ab6755ff796aafefa6f-0-5", "body": "+ew", "highLightBody": "ew", "addLineNumber": 5, "removeLineNumber": null, "op": "add", "type": "line", "links": [] }, { "id": "e4f732276a7f7029f3c8cc69cfb72050d7ac7315d3148ab6755ff796aafefa6f-0-6", "body": "+qewwweeeeeee", "highLightBody": "qewwweeeeeee", "addLineNumber": 6, "removeLineNumber": null, "op": "add", "type": "line", "links": [] }, { "id": "e4f732276a7f7029f3c8cc69cfb72050d7ac7315d3148ab6755ff796aafefa6f-0-7", "body": "+", "highLightBody": "", "addLineNumber": 7, "removeLineNumber": null, "op": "add", "type": "line", "links": [] }, { "id": "e4f732276a7f7029f3c8cc69cfb72050d7ac7315d3148ab6755ff796aafefa6f-0-8", "body": "+eeee", "highLightBody": "eeee", "addLineNumber": 8, "removeLineNumber": null, "op": "add", "type": "line", "links": [] }, { "id": "e4f732276a7f7029f3c8cc69cfb72050d7ac7315d3148ab6755ff796aafefa6f-0-9", "body": "+e", "highLightBody": "e", "addLineNumber": 9, "removeLineNumber": null, "op": "add", "type": "line", "links": [] }, { "id": "e4f732276a7f7029f3c8cc69cfb72050d7ac7315d3148ab6755ff796aafefa6f-0-10", "body": "+e", "highLightBody": "e", "addLineNumber": 10, "removeLineNumber": null, "op": "add", "type": "line", "links": [] }, { "id": "e4f732276a7f7029f3c8cc69cfb72050d7ac7315d3148ab6755ff796aafefa6f-0-11", "body": "+e", "highLightBody": "e", "addLineNumber": 11, "removeLineNumber": null, "op": "add", "type": "line", "links": [] }, { "id": "e4f732276a7f7029f3c8cc69cfb72050d7ac7315d3148ab6755ff796aafefa6f-0-12", "body": "+e", "highLightBody": "e", "addLineNumber": 12, "removeLineNumber": null, "op": "add", "type": "line", "links": [] }, { "id": "e4f732276a7f7029f3c8cc69cfb72050d7ac7315d3148ab6755ff796aafefa6f-0-13", "body": "+e", "highLightBody": "e", "addLineNumber": 13, "removeLineNumber": null, "op": "add", "type": "line", "links": [] }, { "id": "e4f732276a7f7029f3c8cc69cfb72050d7ac7315d3148ab6755ff796aafefa6f-0-14", "body": "+e", "highLightBody": "e", "addLineNumber": 14, "removeLineNumber": null, "op": "add", "type": "line", "links": [] }, { "id": "e4f732276a7f7029f3c8cc69cfb72050d7ac7315d3148ab6755ff796aafefa6f-0-15", "body": "+e", "highLightBody": "e", "addLineNumber": 15, "removeLineNumber": null, "op": "add", "type": "line", "links": [] }, { "id": "e4f732276a7f7029f3c8cc69cfb72050d7ac7315d3148ab6755ff796aafefa6f-0-16", "body": "+e", "highLightBody": "e", "addLineNumber": 16, "removeLineNumber": null, "op": "add", "type": "line", "links": [] } ], "links": [] } ]
STATUS 403
- Нет прав для доступа.
STATUS 404
- Данные по запросу не найдены.
GET /project/{userAlias}/{projectAlias}/branch/compare/file?filePath={filePath}&baseHash={baseHash}&compareHash={compareHash}
Сравнение изменений файла в различных коммитах, возращает массив объектафайл
Запрос | Описание |
---|---|
GET /project/{userAlias}/{projectAlias}/branch/compare/file?filePath={filePath}&baseHash={baseHash}&compareHash={compareHash} |
Сравнение файла в различных коммитах |
Переменная пути запроса | Тип | Описание |
---|---|---|
userAlias |
String | Псевдоним пользователя |
projectAlias |
String | Псевдоним проекта |
filePath |
String | Путь до файла (Обязательный параметр) |
baseHash |
String | Базовый коммит (Обязательный параметр) |
compareHash |
String | Сравниваемый коммит (Обязательный параметр) |
Responses STATUS 200
пример JSON:
[ { "id": "eb418131bbe25cb0c386ef9d679f7a5b017810521e0cb185b3906a909c0f0dcc", "newMode": "100644", "oldMode": "100644", "newPath": "some_File.txt", "oldPath": "some_File.txt", "lastCommit": null, "addedLinesCount": 2, "removedLinesCount": 9, "fileName": "some_File.txt", "filePath": "some_File.txt", "fileExtension": "txt", "isImg": false, "isCollapsed": false, "isLarge": false, "isBinary": false, "changeType": null, "headers": [ "diff --git a/some_File.txt b/some_File.txt", "index a763375..4232afa 100644", "--- a/some_File.txt", "+++ b/some_File.txt" ], "lines": [ { "id": "eb418131bbe25cb0c386ef9d679f7a5b017810521e0cb185b3906a909c0f0dcc-14-14-separator", "body": "@@ -14,13 +14,6 @@", "highLightBody": "<span class=\"hljs-meta\">@ -14,13 +14,6 @@</span>", "addLineNumber": null, "removeLineNumber": null, "op": "none", "type": "separator", "links": [] }, { "id": "eb418131bbe25cb0c386ef9d679f7a5b017810521e0cb185b3906a909c0f0dcc-14-14", "body": " as", "highLightBody": "<span class=\"hljs-keyword\">as</span>", "addLineNumber": 14, "removeLineNumber": 14, "op": "none", "type": "line", "links": [] }, { "id": "eb418131bbe25cb0c386ef9d679f7a5b017810521e0cb185b3906a909c0f0dcc-15-15", "body": " ea", "highLightBody": "ea", "addLineNumber": 15, "removeLineNumber": 15, "op": "none", "type": "line", "links": [] }, { "id": "eb418131bbe25cb0c386ef9d679f7a5b017810521e0cb185b3906a909c0f0dcc-16-16", "body": " e", "highLightBody": "e", "addLineNumber": 16, "removeLineNumber": 16, "op": "none", "type": "line", "links": [] }, { "id": "eb418131bbe25cb0c386ef9d679f7a5b017810521e0cb185b3906a909c0f0dcc-17-17", "body": "-ase", "highLightBody": "ase", "addLineNumber": null, "removeLineNumber": 17, "op": "remove", "type": "line", "links": [] }, { "id": "eb418131bbe25cb0c386ef9d679f7a5b017810521e0cb185b3906a909c0f0dcc-18-17", "body": "-a", "highLightBody": "a", "addLineNumber": null, "removeLineNumber": 18, "op": "remove", "type": "line", "links": [] }, { "id": "eb418131bbe25cb0c386ef9d679f7a5b017810521e0cb185b3906a909c0f0dcc-19-17", "body": "-e", "highLightBody": "e", "addLineNumber": null, "removeLineNumber": 19, "op": "remove", "type": "line", "links": [] }, { "id": "eb418131bbe25cb0c386ef9d679f7a5b017810521e0cb185b3906a909c0f0dcc-20-17", "body": "-ae", "highLightBody": "ae", "addLineNumber": null, "removeLineNumber": 20, "op": "remove", "type": "line", "links": [] }, { "id": "eb418131bbe25cb0c386ef9d679f7a5b017810521e0cb185b3906a909c0f0dcc-21-17", "body": "-aeeeeeeeeeeeeeeeeeeeweqew", "highLightBody": "aeeeeeeeeeeeeeeeeeeeweqew", "addLineNumber": null, "removeLineNumber": 21, "op": "remove", "type": "line", "links": [] }, { "id": "eb418131bbe25cb0c386ef9d679f7a5b017810521e0cb185b3906a909c0f0dcc-22-17", "body": "-qe", "highLightBody": "qe", "addLineNumber": null, "removeLineNumber": 22, "op": "remove", "type": "line", "links": [] }, { "id": "eb418131bbe25cb0c386ef9d679f7a5b017810521e0cb185b3906a909c0f0dcc-23-17", "body": "-qw", "highLightBody": "<span class=\"hljs-keyword\">qw</span>", "addLineNumber": null, "removeLineNumber": 23, "op": "remove", "type": "line", "links": [] }, { "id": "eb418131bbe25cb0c386ef9d679f7a5b017810521e0cb185b3906a909c0f0dcc-24-17", "body": "-eqweqweqeqwe", "highLightBody": "eqweqweqeqwe", "addLineNumber": null, "removeLineNumber": 24, "op": "remove", "type": "line", "links": [] }, { "id": "eb418131bbe25cb0c386ef9d679f7a5b017810521e0cb185b3906a909c0f0dcc-25-17", "body": "-:wq", "highLightBody": "<span class=\"hljs-selector-pseudo\">:wq</span>", "addLineNumber": null, "removeLineNumber": 25, "op": "remove", "type": "line", "links": [] }, { "id": "eb418131bbe25cb0c386ef9d679f7a5b017810521e0cb185b3906a909c0f0dcc-26-17", "body": "+asea", "highLightBody": "asea", "addLineNumber": 17, "removeLineNumber": null, "op": "add", "type": "line", "links": [] }, { "id": "eb418131bbe25cb0c386ef9d679f7a5b017810521e0cb185b3906a909c0f0dcc-26-18", "body": "+", "highLightBody": "", "addLineNumber": 18, "removeLineNumber": null, "op": "add", "type": "line", "links": [] }, { "id": "eb418131bbe25cb0c386ef9d679f7a5b017810521e0cb185b3906a909c0f0dcc-26-19", "body": " ", "highLightBody": "", "addLineNumber": 19, "removeLineNumber": 26, "op": "none", "type": "line", "links": [] } ], "links": [] } ]
STATUS 403
- Нет прав для доступа.
STATUS 404
- Данные по запросу не найдены.
GET /project/{userAlias}/{projectAlias}/branch/commit?compareHash={compareHash}&baseHash={baseHash}
Сравнение коммитов, возвращает массив коммитов. Есть возможность настройки количества отображаемых объектов на странице
Запрос | Описание |
---|---|
GET /project/{userAlias}/{projectAlias}/branch/commit?compareHash={compareHash}&baseHash={baseHash} |
Сравнение коммитов |
Переменная пути запроса | Тип | Описание |
---|---|---|
userAlias |
String | Псевдоним пользователя |
projectAlias |
String | Псевдоним проекта |
baseHash |
String | Базовый коммит (Обязательный параметр) |
compareHash |
String | Сравниваемый коммит (Обязательный параметр) |
Responses STATUS 200
пример JSON:
{
"_embedded": {
"commitList": [
{
"hash": "f520f268217701239308de4dc866f83f38faaa8d",
"message": "test message\n",
"shortMessage": "test message",
"createdAt": "2022-06-14T13:36:22Z",
"committerIdent": {
"name": "User User",
"avatar": "/static/image/avatar.jpg",
"emailAddress": "User@gmail.com",
"when": "2022-06-14T13:36:22Z"
},
"authorIdent": {
"name": "User User",
"avatar": "/static/image/avatar.jpg",
"emailAddress": "User@gmail.com",
"when": "2022-06-14T13:36:22Z"
},
"user": {
"id": "a10b86a3-c8d7-46cc-9cdb-cea3dd8b6073",
"username": "user",
"name": name,
"surname": surname,
"fullName": "name surname",
"avatar": "https://gitflic.ru/upload/img/d67527fd-fce4-408f-8109-6269d204abe6.jpg"
}
},
{
"hash": "f8db2f71d39ac767c31707b4881feed315e89e24",
"message": "message\n",
"shortMessage": "message",
"createdAt": "2022-06-14T13:13:51Z",
"committerIdent": {
"name": "User User",
"avatar": "/static/image/avatar.jpg",
"emailAddress": "User@gmail.com",
"when": "2022-06-14T13:13:51Z"
},
"authorIdent": {
"name": "User User",
"avatar": "/static/image/avatar.jpg",
"emailAddress": "User@gmail.com",
"when": "2022-06-14T13:13:51Z"
},
"user": {
"id": "a10b86a3-c8d7-46cc-9cdb-cea3dd8b6073",
"username": "user",
"name": name,
"surname": surname,
"fullName": "name surname",
"avatar": "https://gitflic.ru/upload/img/d67527fd-fce4-408f-8109-6269d204abe6.jpg"
}
}
]
},
"page": {
"size": 20,
"totalElements": 2,
"totalPages": 1,
"number": 0
}
}
STATUS 403
- Нет прав для доступа.
STATUS 404
- Данные по запросу не найдены.
В данной статье
Документация
- Общая информация
- Основные настройки
- Авторизация и регистрация
- Уведомления
- Создание README для профиля