InfoGrab Docs

그룹 푸시 규칙 API

요약

이 API를 사용하여 그룹에서 새로 생성된 프로젝트의 그룹 푸시 규칙을 관리합니다. 지정된 그룹의 푸시 규칙을 조회합니다. 성공 시 200 OK와 다음 응답 속성을 반환합니다: 모든 설정이 비활성화된 푸시 규칙이 구성된 경우의 응답 예시:

이 API를 사용하여 그룹에서 새로 생성된 프로젝트의 그룹 푸시 규칙을 관리합니다.

사전 요구 사항:

  • 그룹의 Owner 역할이 있거나 인스턴스의 관리자여야 합니다.

그룹의 푸시 규칙 조회#

지정된 그룹의 푸시 규칙을 조회합니다.

GET /groups/:id/push_rule

지원되는 속성:

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

성공 시 200 OK와 다음 응답 속성을 반환합니다:

속성 유형 설명
author_email_regex 문자열 이 정규식과 일치하는 커밋 작성자 이메일만 허용합니다.
branch_name_regex 문자열 이 정규식과 일치하는 브랜치 이름만 허용합니다.
commit_committer_check 불리언 true이면 커미터 이메일이 자신의 인증된 이메일 중 하나인 경우에만 사용자의 커밋을 허용합니다.
commit_committer_name_check 불리언 true이면 커밋 작성자 이름이 GitLab 계정 이름과 일치하는 경우에만 사용자의 커밋을 허용합니다.
commit_message_negative_regex 문자열 이 정규식과 일치하는 커밋 메시지를 거부합니다.
commit_message_regex 문자열 이 정규식과 일치하는 커밋 메시지만 허용합니다.
created_at 문자열 푸시 규칙이 생성된 날짜 및 시간.
deny_delete_tag 불리언 true이면 태그 삭제를 거부합니다.
file_name_regex 문자열 이 정규식과 일치하는 파일 이름을 거부합니다.
id 정수 푸시 규칙의 ID.
max_file_size 정수 허용되는 최대 파일 크기(MB).
member_check 불리언 true이면 GitLab 사용자만 커밋 작성자가 될 수 있습니다.
prevent_secrets 불리언 true이면 시크릿이 포함될 가능성이 있는 파일을 거부합니다.
reject_non_dco_commits 불리언 true이면 DCO 인증이 되지 않은 커밋을 거부합니다.
reject_unsigned_commits 불리언 true이면 서명되지 않은 커밋을 거부합니다.

요청 예시:

curl --header "PRIVATE-TOKEN: <your_access_token>" \
  --url "https://gitlab.example.com/api/v4/groups/2/push_rule"

모든 설정이 비활성화된 푸시 규칙이 구성된 경우의 응답 예시:

{
  "id": 1,
  "created_at": "2020-08-17T19:09:19.580Z",
  "commit_message_regex": "[a-zA-Z]",
  "commit_message_negative_regex": "[x+]",
  "branch_name_regex": "[a-z]",
  "author_email_regex": "^[A-Za-z0-9.]+@gitlab.com$",
  "file_name_regex": "(exe)$",
  "deny_delete_tag": false,
  "member_check": false,
  "prevent_secrets": false,
  "max_file_size": 0,
  "commit_committer_check": null,
  "commit_committer_name_check": false,
  "reject_unsigned_commits": null,
  "reject_non_dco_commits": null
}

그룹에 푸시 규칙이 구성되지 않은 경우 404 Not Found를 반환합니다:

{
  "message": "404 Not Found"
}
Note

이는 푸시 규칙이 구성되지 않은 경우 리터럴 문자열 "null"과 함께 HTTP 200 OK를 반환하는 프로젝트 푸시 규칙 API와 다릅니다.

비활성화된 경우 일부 불리언 속성은 false 대신 null을 반환합니다. 예:

  • commit_committer_check
  • reject_unsigned_commits
  • reject_non_dco_commits

그룹에 푸시 규칙 추가#

지정된 그룹에 푸시 규칙을 추가합니다. 아직 푸시 규칙을 정의하지 않은 경우에만 사용합니다.

POST /groups/:id/push_rule

지원되는 속성:

속성 유형 필수 설명
id 정수 또는 문자열 그룹의 ID 또는 URL 인코딩된 경로.
author_email_regex 문자열 아니요 이 속성에 제공된 정규식과 일치하는 커밋 작성자 이메일만 허용합니다(예: @my-company.com$).
branch_name_regex 문자열 아니요 이 속성에 제공된 정규식과 일치하는 브랜치 이름만 허용합니다(예: (feature|hotfix)\/.*).
commit_committer_check 불리언 아니요 true이면 커미터 이메일이 자신의 인증된 이메일 중 하나인 경우에만 사용자의 커밋을 허용합니다.
commit_committer_name_check 불리언 아니요 true이면 커밋 작성자 이름이 GitLab 계정 이름과 일치하는 경우에만 사용자의 커밋을 허용합니다.
commit_message_negative_regex 문자열 아니요 이 속성에 제공된 정규식과 일치하는 커밋 메시지를 거부합니다(예: ssh\:\/\/).
commit_message_regex 문자열 아니요 true이면 이 속성에 제공된 정규식과 일치하는 커밋 메시지만 허용합니다(예: Fixed \d+\..*).
deny_delete_tag 불리언 아니요 태그 삭제를 거부합니다.
file_name_regex 문자열 아니요 이 속성에 제공된 정규식과 일치하는 파일 이름을 거부합니다(예: (jar|exe)$).
max_file_size 정수 아니요 허용되는 최대 파일 크기(MB).
member_check 불리언 아니요 true이면 GitLab 사용자만 커밋 작성자가 될 수 있습니다.
prevent_secrets 불리언 아니요 true이면 시크릿이 포함될 가능성이 있는 파일을 거부합니다.
reject_non_dco_commits 불리언 아니요 true이면 DCO 인증이 되지 않은 커밋을 거부합니다.
reject_unsigned_commits 불리언 아니요 true이면 서명되지 않은 커밋을 거부합니다.

성공 시 201 Created와 다음 응답 속성을 반환합니다:

속성 유형 설명
author_email_regex 문자열 이 정규식과 일치하는 커밋 작성자 이메일만 허용합니다.
branch_name_regex 문자열 이 정규식과 일치하는 브랜치 이름만 허용합니다.
commit_committer_check 불리언 true이면 커미터 이메일이 자신의 인증된 이메일 중 하나인 경우에만 사용자의 커밋을 허용합니다.
commit_committer_name_check 불리언 true이면 커밋 작성자 이름이 GitLab 계정 이름과 일치하는 경우에만 사용자의 커밋을 허용합니다.
commit_message_negative_regex 문자열 이 정규식과 일치하는 커밋 메시지를 거부합니다.
commit_message_regex 문자열 true이면 이 정규식과 일치하는 커밋 메시지만 허용합니다.
created_at 문자열 푸시 규칙이 생성된 날짜 및 시간.
deny_delete_tag 불리언 true이면 태그 삭제를 거부합니다.
file_name_regex 문자열 이 정규식과 일치하는 파일 이름을 거부합니다.
id 정수 푸시 규칙의 ID.
max_file_size 정수 허용되는 최대 파일 크기(MB).
member_check 불리언 true이면 GitLab 사용자만 커밋 작성자가 될 수 있습니다.
prevent_secrets 불리언 true이면 시크릿이 포함될 가능성이 있는 파일을 거부합니다.
reject_non_dco_commits 불리언 true이면 DCO 인증이 되지 않은 커밋을 거부합니다.
reject_unsigned_commits 불리언 true이면 서명되지 않은 커밋을 거부합니다.

요청 예시:

curl --request POST \
  --header "PRIVATE-TOKEN: <your_access_token>" \
  --url "https://gitlab.example.com/api/v4/groups/19/push_rule?prevent_secrets=true"

응답 예시:

{
  "id": 1,
  "created_at": "2020-08-31T15:53:00.073Z",
  "commit_committer_check": false,
  "commit_committer_name_check": false,
  "reject_unsigned_commits": false,
  "reject_non_dco_commits": false,
  "commit_message_regex": "[a-zA-Z]",
  "commit_message_negative_regex": "[x+]",
  "branch_name_regex": null,
  "deny_delete_tag": false,
  "member_check": false,
  "prevent_secrets": true,
  "author_email_regex": "^[A-Za-z0-9.]+@gitlab.com$",
  "file_name_regex": null,
  "max_file_size": 100
}

그룹의 푸시 규칙 업데이트#

지정된 그룹의 푸시 규칙을 업데이트합니다.

PUT /groups/:id/push_rule

지원되는 속성:

속성 유형 필수 설명
id 정수 또는 문자열 그룹의 ID 또는 URL 인코딩된 경로.
author_email_regex 문자열 아니요 이 속성에 제공된 정규식과 일치하는 커밋 작성자 이메일만 허용합니다(예: @my-company.com$).
branch_name_regex 문자열 아니요 이 속성에 제공된 정규식과 일치하는 브랜치 이름만 허용합니다(예: (feature|hotfix)\/.*).
commit_committer_check 불리언 아니요 true이면 커미터 이메일이 자신의 인증된 이메일 중 하나인 경우에만 사용자의 커밋을 허용합니다.
commit_committer_name_check 불리언 아니요 true이면 커밋 작성자 이름이 GitLab 계정 이름과 일치하는 경우에만 사용자의 커밋을 허용합니다.
commit_message_negative_regex 문자열 아니요 이 속성에 제공된 정규식과 일치하는 커밋 메시지를 거부합니다(예: ssh\:\/\/).
commit_message_regex 문자열 아니요 true이면 이 속성에 제공된 정규식과 일치하는 커밋 메시지만 허용합니다(예: Fixed \d+\..*).
deny_delete_tag 불리언 아니요 true이면 태그 삭제를 거부합니다.
file_name_regex 문자열 아니요 이 속성에 제공된 정규식과 일치하는 파일 이름을 거부합니다(예: (jar|exe)$).
max_file_size 정수 아니요 허용되는 최대 파일 크기(MB).
member_check 불리언 아니요 true이면 GitLab 사용자만 커밋 작성자가 될 수 있습니다.
prevent_secrets 불리언 아니요 true이면 시크릿이 포함될 가능성이 있는 파일을 거부합니다.
reject_non_dco_commits 불리언 아니요 true이면 DCO 인증이 되지 않은 커밋을 거부합니다.
reject_unsigned_commits 불리언 아니요 true이면 서명되지 않은 커밋을 거부합니다.

성공 시 200 OK와 다음 응답 속성을 반환합니다:

속성 유형 설명
author_email_regex 문자열 이 정규식과 일치하는 커밋 작성자 이메일만 허용합니다.
branch_name_regex 문자열 이 정규식과 일치하는 브랜치 이름만 허용합니다.
commit_committer_check 불리언 true이면 커미터 이메일이 자신의 인증된 이메일 중 하나인 경우에만 사용자의 커밋을 허용합니다.
commit_committer_name_check 불리언 true이면 커밋 작성자 이름이 GitLab 계정 이름과 일치하는 경우에만 사용자의 커밋을 허용합니다.
commit_message_negative_regex 문자열 이 정규식과 일치하는 커밋 메시지를 거부합니다.
commit_message_regex 문자열 true이면 이 정규식과 일치하는 커밋 메시지만 허용합니다.
created_at 문자열 푸시 규칙이 생성된 날짜 및 시간.
deny_delete_tag 불리언 true이면 태그 삭제를 거부합니다.
file_name_regex 문자열 이 정규식과 일치하는 파일 이름을 거부합니다.
id 정수 푸시 규칙의 ID.
max_file_size 정수 허용되는 최대 파일 크기(MB).
member_check 불리언 true이면 GitLab 사용자만 커밋 작성자가 될 수 있습니다.
prevent_secrets 불리언 true이면 시크릿이 포함될 가능성이 있는 파일을 거부합니다.
reject_non_dco_commits 불리언 true이면 DCO 인증이 되지 않은 커밋을 거부합니다.
reject_unsigned_commits 불리언 true이면 서명되지 않은 커밋을 거부합니다.

요청 예시:

curl --request PUT \
  --header "PRIVATE-TOKEN: <your_access_token>" \
  --url "https://gitlab.example.com/api/v4/groups/19/push_rule?member_check=true"

응답 예시:

{
  "id": 19,
  "created_at": "2020-08-31T15:53:00.073Z",
  "commit_committer_check": false,
  "commit_committer_name_check": false,
  "reject_unsigned_commits": false,
  "reject_non_dco_commits": false,
  "commit_message_regex": "[a-zA-Z]",
  "commit_message_negative_regex": "[x+]",
  "branch_name_regex": null,
  "deny_delete_tag": false,
  "member_check": true,
  "prevent_secrets": false,
  "author_email_regex": "^[A-Za-z0-9.]+@staging.gitlab.com$",
  "file_name_regex": null,
  "max_file_size": 100
}

그룹의 푸시 규칙 삭제#

지정된 그룹의 모든 푸시 규칙을 삭제합니다.

DELETE /groups/:id/push_rule

지원되는 속성:

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

성공 시 응답 본문 없이 204 No Content를 반환합니다.

요청 예시:

curl --request DELETE \
  --header "PRIVATE-TOKEN: <your_access_token>" \
  --url "https://gitlab.example.com/api/v4/groups/19/push_rule"

그룹 푸시 규칙 API

Tier: Premium, Ultimate
Offering: GitLab.com, GitLab Self-Managed, GitLab Dedicated
원문 보기
요약

이 API를 사용하여 그룹에서 새로 생성된 프로젝트의 그룹 푸시 규칙을 관리합니다. 지정된 그룹의 푸시 규칙을 조회합니다. 성공 시 200 OK와 다음 응답 속성을 반환합니다: 모든 설정이 비활성화된 푸시 규칙이 구성된 경우의 응답 예시:

이 API를 사용하여 그룹에서 새로 생성된 프로젝트의 그룹 푸시 규칙을 관리합니다.

사전 요구 사항:

  • 그룹의 Owner 역할이 있거나 인스턴스의 관리자여야 합니다.

그룹의 푸시 규칙 조회#

지정된 그룹의 푸시 규칙을 조회합니다.

GET /groups/:id/push_rule

지원되는 속성:

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

성공 시 200 OK와 다음 응답 속성을 반환합니다:

속성 유형 설명
author_email_regex 문자열 이 정규식과 일치하는 커밋 작성자 이메일만 허용합니다.
branch_name_regex 문자열 이 정규식과 일치하는 브랜치 이름만 허용합니다.
commit_committer_check 불리언 true이면 커미터 이메일이 자신의 인증된 이메일 중 하나인 경우에만 사용자의 커밋을 허용합니다.
commit_committer_name_check 불리언 true이면 커밋 작성자 이름이 GitLab 계정 이름과 일치하는 경우에만 사용자의 커밋을 허용합니다.
commit_message_negative_regex 문자열 이 정규식과 일치하는 커밋 메시지를 거부합니다.
commit_message_regex 문자열 이 정규식과 일치하는 커밋 메시지만 허용합니다.
created_at 문자열 푸시 규칙이 생성된 날짜 및 시간.
deny_delete_tag 불리언 true이면 태그 삭제를 거부합니다.
file_name_regex 문자열 이 정규식과 일치하는 파일 이름을 거부합니다.
id 정수 푸시 규칙의 ID.
max_file_size 정수 허용되는 최대 파일 크기(MB).
member_check 불리언 true이면 GitLab 사용자만 커밋 작성자가 될 수 있습니다.
prevent_secrets 불리언 true이면 시크릿이 포함될 가능성이 있는 파일을 거부합니다.
reject_non_dco_commits 불리언 true이면 DCO 인증이 되지 않은 커밋을 거부합니다.
reject_unsigned_commits 불리언 true이면 서명되지 않은 커밋을 거부합니다.

요청 예시:

curl --header "PRIVATE-TOKEN: <your_access_token>" \
  --url "https://gitlab.example.com/api/v4/groups/2/push_rule"

모든 설정이 비활성화된 푸시 규칙이 구성된 경우의 응답 예시:

{
  "id": 1,
  "created_at": "2020-08-17T19:09:19.580Z",
  "commit_message_regex": "[a-zA-Z]",
  "commit_message_negative_regex": "[x+]",
  "branch_name_regex": "[a-z]",
  "author_email_regex": "^[A-Za-z0-9.]+@gitlab.com$",
  "file_name_regex": "(exe)$",
  "deny_delete_tag": false,
  "member_check": false,
  "prevent_secrets": false,
  "max_file_size": 0,
  "commit_committer_check": null,
  "commit_committer_name_check": false,
  "reject_unsigned_commits": null,
  "reject_non_dco_commits": null
}

그룹에 푸시 규칙이 구성되지 않은 경우 404 Not Found를 반환합니다:

{
  "message": "404 Not Found"
}
Note

이는 푸시 규칙이 구성되지 않은 경우 리터럴 문자열 "null"과 함께 HTTP 200 OK를 반환하는 프로젝트 푸시 규칙 API와 다릅니다.

비활성화된 경우 일부 불리언 속성은 false 대신 null을 반환합니다. 예:

  • commit_committer_check
  • reject_unsigned_commits
  • reject_non_dco_commits

그룹에 푸시 규칙 추가#

지정된 그룹에 푸시 규칙을 추가합니다. 아직 푸시 규칙을 정의하지 않은 경우에만 사용합니다.

POST /groups/:id/push_rule

지원되는 속성:

속성 유형 필수 설명
id 정수 또는 문자열 그룹의 ID 또는 URL 인코딩된 경로.
author_email_regex 문자열 아니요 이 속성에 제공된 정규식과 일치하는 커밋 작성자 이메일만 허용합니다(예: @my-company.com$).
branch_name_regex 문자열 아니요 이 속성에 제공된 정규식과 일치하는 브랜치 이름만 허용합니다(예: (feature|hotfix)\/.*).
commit_committer_check 불리언 아니요 true이면 커미터 이메일이 자신의 인증된 이메일 중 하나인 경우에만 사용자의 커밋을 허용합니다.
commit_committer_name_check 불리언 아니요 true이면 커밋 작성자 이름이 GitLab 계정 이름과 일치하는 경우에만 사용자의 커밋을 허용합니다.
commit_message_negative_regex 문자열 아니요 이 속성에 제공된 정규식과 일치하는 커밋 메시지를 거부합니다(예: ssh\:\/\/).
commit_message_regex 문자열 아니요 true이면 이 속성에 제공된 정규식과 일치하는 커밋 메시지만 허용합니다(예: Fixed \d+\..*).
deny_delete_tag 불리언 아니요 태그 삭제를 거부합니다.
file_name_regex 문자열 아니요 이 속성에 제공된 정규식과 일치하는 파일 이름을 거부합니다(예: (jar|exe)$).
max_file_size 정수 아니요 허용되는 최대 파일 크기(MB).
member_check 불리언 아니요 true이면 GitLab 사용자만 커밋 작성자가 될 수 있습니다.
prevent_secrets 불리언 아니요 true이면 시크릿이 포함될 가능성이 있는 파일을 거부합니다.
reject_non_dco_commits 불리언 아니요 true이면 DCO 인증이 되지 않은 커밋을 거부합니다.
reject_unsigned_commits 불리언 아니요 true이면 서명되지 않은 커밋을 거부합니다.

성공 시 201 Created와 다음 응답 속성을 반환합니다:

속성 유형 설명
author_email_regex 문자열 이 정규식과 일치하는 커밋 작성자 이메일만 허용합니다.
branch_name_regex 문자열 이 정규식과 일치하는 브랜치 이름만 허용합니다.
commit_committer_check 불리언 true이면 커미터 이메일이 자신의 인증된 이메일 중 하나인 경우에만 사용자의 커밋을 허용합니다.
commit_committer_name_check 불리언 true이면 커밋 작성자 이름이 GitLab 계정 이름과 일치하는 경우에만 사용자의 커밋을 허용합니다.
commit_message_negative_regex 문자열 이 정규식과 일치하는 커밋 메시지를 거부합니다.
commit_message_regex 문자열 true이면 이 정규식과 일치하는 커밋 메시지만 허용합니다.
created_at 문자열 푸시 규칙이 생성된 날짜 및 시간.
deny_delete_tag 불리언 true이면 태그 삭제를 거부합니다.
file_name_regex 문자열 이 정규식과 일치하는 파일 이름을 거부합니다.
id 정수 푸시 규칙의 ID.
max_file_size 정수 허용되는 최대 파일 크기(MB).
member_check 불리언 true이면 GitLab 사용자만 커밋 작성자가 될 수 있습니다.
prevent_secrets 불리언 true이면 시크릿이 포함될 가능성이 있는 파일을 거부합니다.
reject_non_dco_commits 불리언 true이면 DCO 인증이 되지 않은 커밋을 거부합니다.
reject_unsigned_commits 불리언 true이면 서명되지 않은 커밋을 거부합니다.

요청 예시:

curl --request POST \
  --header "PRIVATE-TOKEN: <your_access_token>" \
  --url "https://gitlab.example.com/api/v4/groups/19/push_rule?prevent_secrets=true"

응답 예시:

{
  "id": 1,
  "created_at": "2020-08-31T15:53:00.073Z",
  "commit_committer_check": false,
  "commit_committer_name_check": false,
  "reject_unsigned_commits": false,
  "reject_non_dco_commits": false,
  "commit_message_regex": "[a-zA-Z]",
  "commit_message_negative_regex": "[x+]",
  "branch_name_regex": null,
  "deny_delete_tag": false,
  "member_check": false,
  "prevent_secrets": true,
  "author_email_regex": "^[A-Za-z0-9.]+@gitlab.com$",
  "file_name_regex": null,
  "max_file_size": 100
}

그룹의 푸시 규칙 업데이트#

지정된 그룹의 푸시 규칙을 업데이트합니다.

PUT /groups/:id/push_rule

지원되는 속성:

속성 유형 필수 설명
id 정수 또는 문자열 그룹의 ID 또는 URL 인코딩된 경로.
author_email_regex 문자열 아니요 이 속성에 제공된 정규식과 일치하는 커밋 작성자 이메일만 허용합니다(예: @my-company.com$).
branch_name_regex 문자열 아니요 이 속성에 제공된 정규식과 일치하는 브랜치 이름만 허용합니다(예: (feature|hotfix)\/.*).
commit_committer_check 불리언 아니요 true이면 커미터 이메일이 자신의 인증된 이메일 중 하나인 경우에만 사용자의 커밋을 허용합니다.
commit_committer_name_check 불리언 아니요 true이면 커밋 작성자 이름이 GitLab 계정 이름과 일치하는 경우에만 사용자의 커밋을 허용합니다.
commit_message_negative_regex 문자열 아니요 이 속성에 제공된 정규식과 일치하는 커밋 메시지를 거부합니다(예: ssh\:\/\/).
commit_message_regex 문자열 아니요 true이면 이 속성에 제공된 정규식과 일치하는 커밋 메시지만 허용합니다(예: Fixed \d+\..*).
deny_delete_tag 불리언 아니요 true이면 태그 삭제를 거부합니다.
file_name_regex 문자열 아니요 이 속성에 제공된 정규식과 일치하는 파일 이름을 거부합니다(예: (jar|exe)$).
max_file_size 정수 아니요 허용되는 최대 파일 크기(MB).
member_check 불리언 아니요 true이면 GitLab 사용자만 커밋 작성자가 될 수 있습니다.
prevent_secrets 불리언 아니요 true이면 시크릿이 포함될 가능성이 있는 파일을 거부합니다.
reject_non_dco_commits 불리언 아니요 true이면 DCO 인증이 되지 않은 커밋을 거부합니다.
reject_unsigned_commits 불리언 아니요 true이면 서명되지 않은 커밋을 거부합니다.

성공 시 200 OK와 다음 응답 속성을 반환합니다:

속성 유형 설명
author_email_regex 문자열 이 정규식과 일치하는 커밋 작성자 이메일만 허용합니다.
branch_name_regex 문자열 이 정규식과 일치하는 브랜치 이름만 허용합니다.
commit_committer_check 불리언 true이면 커미터 이메일이 자신의 인증된 이메일 중 하나인 경우에만 사용자의 커밋을 허용합니다.
commit_committer_name_check 불리언 true이면 커밋 작성자 이름이 GitLab 계정 이름과 일치하는 경우에만 사용자의 커밋을 허용합니다.
commit_message_negative_regex 문자열 이 정규식과 일치하는 커밋 메시지를 거부합니다.
commit_message_regex 문자열 true이면 이 정규식과 일치하는 커밋 메시지만 허용합니다.
created_at 문자열 푸시 규칙이 생성된 날짜 및 시간.
deny_delete_tag 불리언 true이면 태그 삭제를 거부합니다.
file_name_regex 문자열 이 정규식과 일치하는 파일 이름을 거부합니다.
id 정수 푸시 규칙의 ID.
max_file_size 정수 허용되는 최대 파일 크기(MB).
member_check 불리언 true이면 GitLab 사용자만 커밋 작성자가 될 수 있습니다.
prevent_secrets 불리언 true이면 시크릿이 포함될 가능성이 있는 파일을 거부합니다.
reject_non_dco_commits 불리언 true이면 DCO 인증이 되지 않은 커밋을 거부합니다.
reject_unsigned_commits 불리언 true이면 서명되지 않은 커밋을 거부합니다.

요청 예시:

curl --request PUT \
  --header "PRIVATE-TOKEN: <your_access_token>" \
  --url "https://gitlab.example.com/api/v4/groups/19/push_rule?member_check=true"

응답 예시:

{
  "id": 19,
  "created_at": "2020-08-31T15:53:00.073Z",
  "commit_committer_check": false,
  "commit_committer_name_check": false,
  "reject_unsigned_commits": false,
  "reject_non_dco_commits": false,
  "commit_message_regex": "[a-zA-Z]",
  "commit_message_negative_regex": "[x+]",
  "branch_name_regex": null,
  "deny_delete_tag": false,
  "member_check": true,
  "prevent_secrets": false,
  "author_email_regex": "^[A-Za-z0-9.]+@staging.gitlab.com$",
  "file_name_regex": null,
  "max_file_size": 100
}

그룹의 푸시 규칙 삭제#

지정된 그룹의 모든 푸시 규칙을 삭제합니다.

DELETE /groups/:id/push_rule

지원되는 속성:

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

성공 시 응답 본문 없이 204 No Content를 반환합니다.

요청 예시:

curl --request DELETE \
  --header "PRIVATE-TOKEN: <your_access_token>" \
  --url "https://gitlab.example.com/api/v4/groups/19/push_rule"