22 KiB
stage | group | info |
---|---|---|
Create | Source Code | To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments |
Create: Source Code Backend
The Create:Source Code BE team focuses on the GitLab suite of Source Code Management (SCM) tools. It is responsible for all backend aspects of the product categories that fall under the Source Code group of the Create stage of the DevOps lifecycle.
We interface with the Gitaly and Code Review teams, and work closely with the Create:Source Code Frontend team. The features we work with are listed on the Features by Group Page.
The team works across three codebases: Workhorse, GitLab Shell and GitLab Rails.
Workhorse
GitLab Workhorse is a smart reverse proxy for GitLab. It handles "large" HTTP
requests such as file downloads, file uploads, git push
, git pull
and git
archive downloads.
Workhorse itself is not a feature, but there are several features in GitLab that would not work efficiently without Workhorse.
Workhorse documentation is available in the Workhorse repository.
GitLab Shell
GitLab Shell handles Git SSH sessions for GitLab and modifies the list of authorized keys. For more information, refer to the README. for GitLab Shell.
GitLab Rails
Source code API endpoints
Endpoint | Threshold | Source |
---|---|---|
DELETE /api/:version/projects/:id/protected_branches/:name |
:low |
source |
GET /api/:version/internal/authorized_keys |
:high |
source |
GET /api/:version/internal/lfs |
:high |
source |
GET /api/:version/projects/:id/approval_rules |
:low |
|
GET /api/:version/projects/:id/approval_settings |
default | |
GET /api/:version/projects/:id/approvals |
default | |
GET /api/:version/projects/:id/forks |
:low |
source |
GET /api/:version/projects/:id/groups |
default | source |
GET /api/:version/projects/:id/languages |
:medium |
source |
GET /api/:version/projects/:id/merge_request_approval_setting |
:medium |
source |
GET /api/:version/projects/:id/merge_requests/:merge_request_iid/approval_rules |
:low |
source |
GET /api/:version/projects/:id/merge_requests/:merge_request_iid/approval_settings |
:low |
source |
GET /api/:version/projects/:id/merge_requests/:merge_request_iid/approval_state |
:low |
source |
GET /api/:version/projects/:id/merge_requests/:merge_request_iid/approvals |
:low |
source |
GET /api/:version/projects/:id/protected_branches |
default | source |
GET /api/:version/projects/:id/protected_branches/:name |
default | source |
GET /api/:version/projects/:id/protected_tags |
default | |
GET /api/:version/projects/:id/protected_tags/:name |
default | |
GET /api/:version/projects/:id/push_rule |
default | |
GET /api/:version/projects/:id/remote_mirrors |
default | |
GET /api/:version/projects/:id/repository/archive |
default | |
GET /api/:version/projects/:id/repository/blobs/:sha |
default | |
GET /api/:version/projects/:id/repository/blobs/:sha/raw |
default | |
GET /api/:version/projects/:id/repository/branches |
:low |
source |
GET /api/:version/projects/:id/repository/branches/:branch |
:low |
source |
GET /api/:version/projects/:id/repository/commits |
:low |
source |
GET /api/:version/projects/:id/repository/commits/:sha |
default | source |
GET /api/:version/projects/:id/repository/commits/:sha/comments |
default | source |
GET /api/:version/projects/:id/repository/commits/:sha/diff |
:low |
source |
GET /api/:version/projects/:id/repository/commits/:sha/merge_requests |
:low |
source |
GET /api/:version/projects/:id/repository/commits/:sha/refs |
:low |
source |
GET /api/:version/projects/:id/repository/compare |
:low |
source |
GET /api/:version/projects/:id/repository/contributors |
default | |
GET /api/:version/projects/:id/repository/files/:file_path |
default | |
GET /api/:version/projects/:id/repository/files/:file_path/raw |
:low |
source |
GET /api/:version/projects/:id/repository/tags |
:low |
source |
GET /api/:version/projects/:id/repository/tree |
:low |
source |
GET /api/:version/projects/:id/statistics |
default | |
GraphqlController#execute |
default | |
HEAD /api/:version/projects/:id/repository/files/:file_path |
:low |
source |
HEAD /api/:version/projects/:id/repository/files/:file_path/raw |
:low |
source |
POST /api/:version/internal/allowed |
default | source |
POST /api/:version/internal/lfs_authenticate |
:high |
source |
POST /api/:version/internal/post_receive |
default | source |
POST /api/:version/internal/pre_receive |
:high |
source |
POST /api/:version/projects/:id/approvals |
:low |
source |
POST /api/:version/projects/:id/merge_requests/:merge_request_iid/approvals |
:low |
source |
POST /api/:version/projects/:id/merge_requests/:merge_request_iid/approve |
:low |
source |
POST /api/:version/projects/:id/merge_requests/:merge_request_iid/unapprove |
:low |
source |
POST /api/:version/projects/:id/protected_branches |
:low |
source |
POST /api/:version/projects/:id/repository/commits |
:low |
source |
POST /api/:version/projects/:id/repository/files/:file_path |
:low |
source |
PUT /api/:version/projects/:id/push_rule |
default | |
PUT /api/:version/projects/:id/repository/files/:file_path |
:low |
source |
Projects::BlameController#show |
:low |
source |
Projects::BlobController#create |
:low |
source |
Projects::BlobController#diff |
:low |
source |
Projects::BlobController#edit |
:low |
source |
Projects::BlobController#show |
:low |
source |
Projects::BlobController#update |
:low |
source |
Projects::BranchesController#create |
:low |
source |
Projects::BranchesController#destroy |
:low |
source |
Projects::BranchesController#diverging_commit_counts |
:low |
source |
Projects::BranchesController#index |
:low |
source |
Projects::BranchesController#new |
:low |
source |
Projects::CommitController#branches |
:low |
source |
Projects::CommitController#merge_requests |
:low |
source |
Projects::CommitController#pipelines |
:low |
source |
Projects::CommitController#show |
:low |
source |
Projects::CommitsController#show |
:low |
source |
Projects::CommitsController#signatures |
:low |
source |
Projects::CompareController#create |
:low |
source |
Projects::CompareController#index |
:low |
source |
Projects::CompareController#show |
:low |
source |
Projects::CompareController#signatures |
:low |
source |
Projects::FindFileController#list |
:low |
source |
Projects::FindFileController#show |
:low |
source |
Projects::ForksController#index |
:low |
source |
Projects::GraphsController#show |
:low |
source |
Projects::NetworkController#show |
:low |
source |
Projects::PathLocksController#index |
:low |
source |
Projects::RawController#show |
default | |
Projects::RefsController#logs_tree |
:low |
source |
Projects::RefsController#switch |
:low |
source |
Projects::RepositoriesController#archive |
default | |
Projects::Settings::RepositoryController#show |
:low |
source |
Projects::TagsController#index |
:low |
source |
Projects::TagsController#new |
:low |
source |
Projects::TagsController#show |
:low |
source |
Projects::TemplatesController#names |
:low |
source |
Projects::TreeController#show |
:low |
source |
ProjectsController#refs |
:low |
source |
Repositories::GitHttpController#git_receive_pack |
default | |
Repositories::GitHttpController#git_upload_pack |
default | |
Repositories::GitHttpController#info_refs |
default | |
Repositories::LfsApiController#batch |
:medium |
source |
Repositories::LfsLocksApiController#verify |
default | |
Repositories::LfsStorageController#download |
:medium |
source |
Repositories::LfsStorageController#upload_authorize |
:medium |
source |
Repositories::LfsStorageController#upload_finalize |
:low |
source |