프로젝트 푸시 규칙 API
Tier: Premium, Ultimate
Offering: GitLab.com, Self-managed, GitLab Dedicated
REST API를 사용하여 프로젝트에 대한 푸시 규칙을 관리할 수 있습니다.
프로젝트 푸시 규칙 가져오기
프로젝트의 푸시 규칙을 가져옵니다.
GET /projects/:id/push_rule
지원되는 속성:
| Attribute | Type | Required | Description | 
|---|---|---|---|
| id | integer or string | Yes | 프로젝트의 ID 또는 URL-인코딩된 경로 | 
예시 응답:
{
  "id": 1,
  "project_id": 3,
  "commit_message_regex": "Fixes \\d+\\..*",
  "commit_message_negative_regex": "ssh\\:\\/\\/",
  "branch_name_regex": "",
  "deny_delete_tag": false,
  "created_at": "2012-10-12T17:04:47Z",
  "member_check": false,
  "prevent_secrets": false,
  "author_email_regex": "",
  "file_name_regex": "",
  "max_file_size": 5,
  "commit_committer_check": false,
  "commit_committer_name_check": false,
  "reject_unsigned_commits": false,
  "reject_non_dco_commits": false
}
프로젝트 푸시 규칙 추가하기
지정된 프로젝트에 푸시 규칙을 추가합니다.
POST /projects/:id/push_rule
지원되는 속성:
| Attribute | Type | Required | Description | 
|---|---|---|---|
| id | integer or string | Yes | 프로젝트의 ID 또는 URL-인코딩된 경로. | 
| author_email_regex | string | No | 모든 커밋 작성자 이메일은 이 정규 표현식과 일치해야 합니다. | 
| branch_name_regex | string | No | 모든 브랜치 이름은 이 정규 표현식과 일치해야 합니다. | 
| commit_message_negative_regex | string | No | 어떤 커밋 메시지도 이 정규 표현식과 일치해서는 안 됩니다. | 
| commit_message_regex | string | No | 모든 커밋 메시지는 이 정규 표현식과 일치해야 합니다. | 
| deny_delete_tag | boolean | No | 태그 삭제를 거부합니다. | 
| file_name_regex | string | No | 모든 커밋된 파일 이름은 이 정규 표현식과 일치하지 않아야 합니다. | 
| max_file_size | integer | No | 최대 파일 크기 (MB). | 
| member_check | boolean | No | 커밋 작성자(이메일)를 기존 GitLab 사용자로 제한합니다. | 
| prevent_secrets | boolean | No | GitLab은 비밀이 포함될 가능성이 있는 파일을 거부합니다. | 
| commit_committer_check | boolean | No | 사용자는 커밋터 이메일이 자신의 인증된 이메일 중 하나인 경우에만 이 저장소에 커밋을 푸시할 수 있습니다. | 
| commit_committer_name_check | boolean | No | 사용자는 커밋 작성자 이름이 GitLab 계정 이름과 일치하는 경우에만 이 저장소에 커밋을 푸시할 수 있습니다. | 
| reject_unsigned_commits | boolean | No | 서명되지 않은 커밋을 거부합니다. | 
| reject_non_dco_commits | boolean | No | DCO 인증이 되지 않은 커밋을 거부합니다. | 
프로젝트 푸시 규칙 편집
지정된 프로젝트에 대한 푸시 규칙을 편집합니다.
PUT /projects/:id/push_rule
지원되는 속성:
| 속성 | 타입 | 필수 | 설명 | 
|---|---|---|---|
| id | 정수 또는 문자열 | 예 | 프로젝트의 ID 또는 URL 인코딩 경로입니다. | 
| author_email_regex | 문자열 | 아니오 | 모든 커밋 작성자 이메일은 이 정규 표현식과 일치해야 합니다. | 
| branch_name_regex | 문자열 | 아니오 | 모든 브랜치 이름은 이 정규 표현식과 일치해야 합니다. | 
| commit_message_negative_regex | 문자열 | 아니오 | 이 정규 표현식과 일치하는 커밋 메시지는 허용되지 않습니다. | 
| commit_message_regex | 문자열 | 아니오 | 모든 커밋 메시지는 이 정규 표현식과 일치해야 합니다. | 
| deny_delete_tag | 불리언 | 아니오 | 태그 삭제를 거부합니다. | 
| file_name_regex | 문자열 | 아니오 | 모든 커밋된 파일 이름은 일치하지 않아야 합니다. | 
| max_file_size | 정수 | 아니오 | 최대 파일 크기(MB)입니다. | 
| member_check | 불리언 | 아니오 | 작성자(이메일)에 의한 커밋을 기존 GitLab 사용자로 제한합니다. | 
| prevent_secrets | 불리언 | 아니오 | GitLab은 비밀이 포함될 가능성이 있는 파일을 거부합니다. | 
| commit_committer_check | 불리언 | 아니오 | 사용자는 자신의 확인된 이메일 중 하나의 커미터 이메일이 있는 경우에만 이 리포지토리에 커밋을 푸시할 수 있습니다. | 
| commit_committer_name_check | 불리언 | 아니오 | 사용자는 커밋 작성자 이름이 자신의 GitLab 계정 이름과 일치하는 경우에만 이 리포지토리에 커밋을 푸시할 수 있습니다. | 
| reject_unsigned_commits | 불리언 | 아니오 | 서명되지 않은 커밋을 거부합니다. | 
| reject_non_dco_commits | 불리언 | 아니오 | DCO 인증되지 않은 커밋을 거부합니다. | 
프로젝트 푸시 규칙 삭제
프로젝트에서 푸시 규칙을 삭제합니다.
DELETE /projects/:id/push_rule
지원되는 속성:
| 속성 | 타입 | 필수 | 설명 | 
|---|---|---|---|
| id | 정수 또는 문자열 | 예 | 프로젝트의 ID 또는 URL 인코딩 경로입니다. | 
 도움말
        도움말