Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "Orion/Server API/Git API"
< Orion | Server API
m (Set category sort keys) |
m (git commands and corresponding bugzillas) |
||
Line 1: | Line 1: | ||
The Git API is a web server API for browsing and manipulating Git repositories. | The Git API is a web server API for browsing and manipulating Git repositories. | ||
− | == | + | == Git commands == |
+ | |||
+ | === git add === | ||
+ | === git branch === | ||
+ | === git checkout === | ||
+ | === git clone === | ||
+ | === git config === | ||
+ | === git commit === | ||
+ | |||
+ | see [https://bugs.eclipse.org/bugs/show_bug.cgi?id=338203 bug 338203] | ||
+ | |||
+ | === git fetch === | ||
+ | === git log === | ||
+ | === git merge === | ||
+ | === git pull === | ||
+ | |||
+ | see [https://bugs.eclipse.org/bugs/show_bug.cgi?id=336116 bug 336116] | ||
+ | |||
+ | === git push === | ||
+ | === git reset === | ||
+ | === git revert === | ||
+ | see [https://bugs.eclipse.org/bugs/show_bug.cgi?id=339105 bug 339105] | ||
+ | |||
+ | === git status === | ||
+ | [[#Getting status for a git project]] | ||
+ | |||
+ | === git tag === | ||
+ | see [https://bugs.eclipse.org/bugs/show_bug.cgi?id=339108 bug 339108] | ||
+ | |||
+ | == REST API == | ||
=== Getting status for a git project === | === Getting status for a git project === | ||
Line 87: | Line 116: | ||
Progress is being tracked on [https://bugs.eclipse.org/bugs/show_bug.cgi?id=338202 bug 338202]. | Progress is being tracked on [https://bugs.eclipse.org/bugs/show_bug.cgi?id=338202 bug 338202]. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
= JSON representations = | = JSON representations = |
Revision as of 07:51, 14 March 2011
The Git API is a web server API for browsing and manipulating Git repositories.
Git commands
git add
git branch
git checkout
git clone
git config
git commit
see bug 338203
git fetch
git log
git merge
git pull
see bug 336116
git push
git reset
git revert
see bug 339105
git status
#Getting status for a git project
git tag
see bug 339108
REST API
Getting status for a git project
- Overview
- To retrieve the working tree status of a project, send a GET request to the git status location.
- HTTP Method
- GET
- Example Request
GET /git/status/file/MyProj/
- Example Response
HTTP/1.1 200 OK
Content-Type: text/plain
Content-Length: 22
TBD
- Detailed Explanation
- TBD.
Progress in being tracked on bug 337212.
Getting a diff
- Overview
- To retrieve changes between selected commits, commit and working tree, and so on. Send a GET request to the git diff location.
- HTTP Method
- GET
- Example Request
GET /git/diff/file/MyProj/
- Example Response
HTTP/1.1 200 OK
Content-Type: text/plain
Content-Length: 22
TBD
- Detailed Explanation
- TBD.
Getting a file content from index
- Overview
- To retrieve file content kept in index. Send a GET request to the git index location.
- HTTP Method
- GET
- Example Request
GET /git/index/file/MyProj/file.txt
- Example Response
HTTP/1.1 200 OK
Content-Type: text/plain
Content-Length: 22
This is the contents
- Detailed Explanation
- TBD.
Progress is being tracked on bug 337212.
Configuring git
Progress is being tracked on bug 337820.
Staging files
- Overview
- To stage a file, add it to index. Send a PUT request to the git index location.
- HTTP Method
- PUT
- Example Request
PUT /git/index/file/MyProj/file.txt
- Example Response
HTTP/1.1 200 OK
Content-Type: text/plain
Content-Length: 22
<nothing>
- Detailed Explanation
- TBD.
Unstaging files
- Overview
- To unstage a file, reset index and/or working tree. Send a POST request to the git index location.
- HTTP Method
- POST
- Example Request
POST /git/index/file/MyProj/file.txt
{
"Reset" : "MIXED"
}
- Example Response
HTTP/1.1 200 OK
Content-Type: text/plain
Content-Length: 22
<nothing>
- Detailed Explanation
- TBD.
Progress is being tracked on bug 338202.
JSON representations
File representation extension
The JSON representation for files and directories used by file API may be extended as follows: Required fields are shown in bold. A client cannot rely on the existence of non-required attribute in a file representation from a given Orion server.
Field | Data type | Value |
---|---|---|
Git.DiffLocation | URI | Location of Git Diff resource |
Git.StatusLocation | URI | Location of Git Status resource |
Git.IndexLocation | URI | Location of Git Index resource |