11. GET /repos/{username}/{reponame}/compare/{basehead} β ΡΡΠ°Π²Π½ΠΈΡΡ Π΄Π²Π΅ Π²Π΅ΡΠΊΠΈ/ΡΠ΅Π³Π°/ΠΊΠΎΠΌΠΌΠΈΡΠ°
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅
Π‘ΡΠ°Π²Π½ΠΈΠ²Π°Π΅Ρ Π΄Π²Π° ΡΠ΅Π³Π°, ΠΊΠΎΠΌΠΌΠΈΡΠ° ΠΈΠ»ΠΈ Π²Π΅ΡΠΊΠΈ ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠ°Π·Π½ΠΈΡΡ ΠΌΠ΅ΠΆΠ΄Ρ Π½ΠΈΠΌΠΈ (Π°Π½Π°Π»ΠΎΠ³ git diff). ΠΠΎΠ»Π΅Π·Π½ΠΎ Π΄Π»Ρ Π°Π½Π°Π»ΠΈΠ·Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΏΠ΅ΡΠ΅Π΄ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ΠΌ Π·Π°ΠΏΡΠΎΡΠ° Π½Π° ΡΠ»ΠΈΡΠ½ΠΈΠ΅.
Π’Π΅Π»ΠΎ Π·Π°ΠΏΡΠΎΡΠ°
ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π° Π½Π΅Ρ ΡΠ΅Π»Π° Π·Π°ΠΏΡΠΎΡΠ°. ΠΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡΡΡ ΡΠ΅ΡΠ΅Π· URL.
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΡ Π·Π°ΠΏΡΠΎΡΠ°
| ΠΠΎΠ»Π΅ | Π’ΠΈΠΏ | ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ |
|---|---|---|
username | Path | ΠΠΌΡ Π²Π»Π°Π΄Π΅Π»ΡΡΠ° ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ (ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠΉ) |
reponame | Path | ΠΠ°Π·Π²Π°Π½ΠΈΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ (ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠΉ) |
basehead | Path | Π‘ΡΠ°Π²Π½ΠΈΠ²Π°Π΅ΠΌΡΠ΅ ΡΡΡΠ»ΠΊΠΈ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ base...head (ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠΉ) |
page | Query | ΠΠΎΠΌΠ΅Ρ ΡΡΡΠ°Π½ΠΈΡΡ (ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ: 1) (Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠΉ) |
per_page | Query | ΠΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠ² Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ΅ (ΠΌΠ°ΠΊΡΠΈΠΌΡΠΌ 50) (Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠΉ) |
Π€ΠΎΡΠΌΠ°Ρ
basehead:
base...headβ Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ:main...feature/new-ui,v1.0.0...v1.1.0,abc123...def456.
ΠΡΠΈΠΌΠ΅Ρ Π·Π°ΠΏΡΠΎΡΠ°
curl -X GET "https://api.gitverse.ru/repos/dlborun/APInewTestRepo4.3/compare/main...feature/new-ui" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Accept: application/vnd.gitverse.object+json;version=1"ΠΡΠ²Π΅Ρ (200 OK)
{
"url": "https://api.gitverse.ru/repos/dlborun/APInewTestRepo4.3/compare/main...feature/new-ui",
"html_url": "https://gitverse.ru/dlborun/APInewTestRepo4.3/compare/main...feature/new-ui",
"status": "diverged",
"ahead_by": 3,
"behind_by": 2,
"total_commits": 5,
"base_commit": {
"sha": "main_sha...",
"url": "https://api.gitverse.ru/repos/dlborun/APInewTestRepo4.3/commits/main_sha...",
"html_url": "https://gitverse.ru/dlborun/APInewTestRepo4.3/commit/main_sha..."
},
"merge_base_commit": {
"sha": "common_ancestor_sha...",
"url": "https://api.gitverse.ru/repos/dlborun/APInewTestRepo4.3/commits/common_ancestor_sha...",
"html_url": "https://gitverse.ru/dlborun/APInewTestRepo4.3/commit/common_ancestor_sha..."
},
"commits": [
{
"sha": "commit1...",
"author": { "login": "user1" },
"commit": { "message": "Add new UI component" },
"stats": { "additions": 40, "deletions": 10 },
"files": [
{ "filename": "ui/button.js", "status": "modified" }
]
}
],
"files": [
{
"filename": "ui/button.js",
"status": "modified",
"additions": 15,
"deletions": 5,
"changes": 20,
"sha": "file_sha...",
"patch": "..."
}
]
}ΠΠΎΠ΄Ρ ΠΎΡΠ²Π΅ΡΠΎΠ²
| ΠΠΎΠ΄ | Π‘ΡΠ°ΡΡΡ | ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ |
|---|---|---|
| 200 | OK | Π‘ΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ ΡΡΠΏΠ΅ΡΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΎ |
| 404 | Not Found | ΠΠ΄ΠΈΠ½ ΠΈΠ»ΠΈ ΠΎΠ±Π° ΠΎΠ±ΡΠ΅ΠΊΡΠ° (Π²Π΅ΡΠΊΠ°, ΡΠ΅Π³, ΠΊΠΎΠΌΠΌΠΈΡ) Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½Ρ |
| 500 | Internal Server Error | ΠΠ½ΡΡΡΠ΅Π½Π½ΡΡ ΠΎΡΠΈΠ±ΠΊΠ° ΡΠ΅ΡΠ²Π΅ΡΠ° |
10. GET /repos/{username}/{reponame}/commits/{sha} β ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ΅12. POST /repos/{username}/{reponame}/git/refs β ΡΠΎΠ·Π΄Π°ΡΡ Git-ΡΡΡΠ»ΠΊΡ