프로젝트 푸시 규칙 API

Tier: 프리미엄, 얼티메이트 Offering: GitLab.com, 자체 관리, GitLab 전용

REST API를 사용하여 프로젝트의 푸시 규칙을 관리할 수 있습니다.

프로젝트 푸시 규칙 가져오기

프로젝트의 푸시 규칙을 가져옵니다.

GET /projects/:id/push_rule

지원되는 속성:

속성 유형 필수 설명
id 정수 또는 문자열 프로젝트의 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

지원되는 속성:

속성 유형 필수 설명
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(Developer Certificate of Origin)로 인증되지 않았을 경우 거부합니다.

프로젝트 푸시 규칙 편집

지정된 프로젝트의 푸시 규칙을 편집합니다.

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(Developer Certificate of Origin)로 인증되지 않은 커밋인 경우 거부합니다.

프로젝트 푸시 규칙 삭제

프로젝트에서 푸시 규칙을 삭제합니다.

DELETE /projects/:id/push_rule

지원되는 속성:

속성 유형 필수 설명
id 정수 또는 문자열 프로젝트의 ID 또는 URL 인코딩된 경로