머지 리퀘스트 제목 유효성 검사
Offering: GitLab.com, GitLab Self-Managed, GitLab Dedicated
머지 리퀘스트 제목을 RE2 정규식 패턴에 대해 일치시켜 명명 규칙을 적용할 수 있습니다. 제목 유효성 검사를 사용하여 다음을 수행합니다: 프로젝트의 모든 머지 리퀘스트 제목이 머지되기 전에 일치해야 하는 정규식 패턴을 구성합니다.
히스토리
- GitLab 17.11에서
merge_request_title_regex라는 플래그와 함께 도입되었습니다. 기본적으로 비활성화되어 있습니다. - GitLab 18.10에서 GitLab.com 및 GitLab Self-Managed에 활성화되었습니다.
- GitLab 18.10에서 일반적으로 사용 가능합니다. 기능 플래그
merge_request_title_regex가 제거되었습니다.
머지 리퀘스트 제목을 RE2 정규식 패턴에 대해 일치시켜 명명 규칙을 적용할 수 있습니다. 프로젝트에 제목 패턴을 구성하면 패턴과 일치하지 않는 제목의 머지 리퀘스트는 머지가 차단됩니다.
제목 유효성 검사를 사용하여 다음을 수행합니다:
- 제목에 Jira 또는 이슈 트래커 티켓 참조를 요구합니다.
- 규약적 커밋 형식을 적용합니다.
- 릴리스 관리 또는 거버넌스 워크플로우를 위한 제목 접두사를 표준화합니다.
머지 리퀘스트 제목 유효성 검사 구성#
프로젝트의 모든 머지 리퀘스트 제목이 머지되기 전에 일치해야 하는 정규식 패턴을 구성합니다.
사전 요구 사항:
- 프로젝트에 대한 Maintainer 또는 Owner 권한.
제목 유효성 검사를 구성하려면:
- 상단 표시줄에서 Search or go to를 선택하고 프로젝트를 찾습니다.
- 왼쪽 사이드바에서 Settings > Merge requests를 선택합니다.
- Title pattern 텍스트 상자에 정규식 패턴을 입력합니다.
- Title example 텍스트 상자에 예상 형식의 설명을 입력합니다. 머지 리퀘스트 작성자가 무엇을 사용해야 하는지 알 수 있도록 유효한 예시를 포함합니다.
- Save changes를 선택합니다.

Title pattern을 설정하면 Title example도 필요합니다. Title example는 머지 리퀘스트 제목이 패턴과 일치하지 않을 때 사용자에게 표시됩니다.
제목 유효성 검사를 제거하려면 Title pattern 및 Title example 텍스트 상자를 모두 지우고 Save changes를 선택합니다.
API를 사용하여 제목 유효성 검사를 구성하려면 프로젝트 API를 사용할 수도 있습니다.
정규식 구문#
제목 유효성 검사는 PCRE가 아닌 RE2 구문을 사용합니다. RE2는 역참조 또는 전방/후방 탐색을 지원하지 않습니다.
패턴 및 설명 필드의 최대 길이는 각각 255자입니다.
패턴 예시#
다음은 정규식 패턴 예시입니다:
-
Jira 티켓 참조(유효한 제목 예시:
PROJ-123 Fix login bug):^[A-Z]+-\d+ .+ -
규약적 커밋(유효한 제목 예시:
feat(auth): add SSO support):^(feat|fix|docs|chore|refactor|test|style)(\(.+\))?: .+ -
사용자 정의 접두사(유효한 제목 예시:
BUGFIX: resolve timeout error):^(FEATURE|BUGFIX|HOTFIX): .+ -
괄호로 묶인 카테고리(유효한 제목 예시:
[Feature] Add dark mode):^\[.+\] .+
유효성 검사 적용#
제목 유효성 검사 패턴이 구성된 경우:
- 패턴과 일치하지 않는 제목의 머지 리퀘스트는 머지할 수 없습니다.
- 제목 확인은 승인, 파이프라인 상태, 스레드 해결과 같은 다른 확인과 함께 머지 확인으로 표시됩니다.
- 자동 머지가 활성화된 경우 머지 리퀘스트는 제목이 패턴과 일치할 때까지 머지를 기다립니다.
- 유효성 검사는 머지 시점의 현재 제목에 적용됩니다. 작성자는 머지 전 언제든지 제목을 업데이트할 수 있습니다.

문제 해결#
제목 유효성 검사로 인해 머지 리퀘스트를 머지할 수 없음#
머지 리퀘스트가 제목 유효성 검사로 차단된 경우:
- 머지 리퀘스트의 머지 확인 섹션에서 제목 유효성 검사 실패를 확인합니다.
- Settings > Merge requests > Title pattern에 구성된 패턴과 일치하도록 머지 리퀘스트 제목을 업데이트합니다.
- 오류 메시지에 표시된 Title example을 예상 형식의 참조로 사용합니다.
Draft 머지 리퀘스트#
제목 유효성 검사는 모든 Draft: 접두사를 포함한 전체 제목 문자열에 적용됩니다. 정규식 패턴이 Draft: 접두사를 고려하지 않으면 draft 머지 리퀘스트가 유효성 검사에 실패할 수 있습니다. draft 및 비draft 제목을 모두 허용하려면 ^(Draft: )?YOUR_PATTERN과 같은 패턴을 사용하는 것을 고려하세요.
정규식 패턴이 예상대로 일치하지 않음#
제목 유효성 검사는 많은 온라인 정규식 테스터에서 사용하는 PCRE 구문과 다른 RE2 구문을 사용합니다. 패턴을 확인하려면:
- RE2 호환 정규식 테스터를 사용합니다.
- 역참조 또는 전방 탐색 어서션과 같이 지원되지 않는 기능을 사용하지 않는지 확인합니다.
- 특수 문자가 올바르게 이스케이프되었는지 확인합니다.
