- GitLab 활동과 Jira 이슈 상호 참조
- GitLab에서 Jira 이슈 매칭 사용자 정의
- GitLab에서 Jira 이슈 닫기
- 자동 이슈 전환
- 사용자 정의 이슈 전환
- Jira 이슈에 대한 코멘트 비활성화
Jira 이슈 관리
GitLab에서 Jira 이슈를 직접 관리할 수 있습니다. 그런 다음 GitLab 커밋 및 병합 요청에서 Jira 이슈 ID를 참조할 수 있습니다. Jira 이슈 ID는 대문자여야 합니다.
GitLab 활동과 Jira 이슈 상호 참조
이 통합을 통해 GitLab 이슈, 병합 요청 및 Git에서 작업하는 동안 Jira 이슈를 상호 참조할 수 있습니다. GitLab 이슈, 병합 요청, 댓글 또는 커밋에서 Jira 이슈를 언급하면:
- GitLab은 Jira 이슈에 대한 GitLab 언급에서 연결을 제공합니다.
- GitLab은 Jira 이슈에 서식이 있는 코멘트를 추가하여 GitLab의 이슈, 병합 요청 또는 커밋으로 연결합니다.
예를 들어, 이 커밋이 GIT-1
Jira 이슈를 참조할 때:
git commit -m "GIT-1 this is a test commit"
GitLab은 해당 Jira 이슈에 다음을 추가합니다:
- 웹 링크 섹션에 참조.
-
다음 형식을 따르는 액티비티 섹션의 코멘트:
사용자가 [PROJECT_NAME|COMMENTLINK]의 RESOURCE_NAME에서 이 문제를 언급했습니다.: ENTITY_TITLE
-
USER
: Jira 이슈를 언급한 사용자의 이름(링크가 걸림). -
RESOURCE_NAME
: Jira 이슈가 참조된 리소스 유형(예: GitLab 커밋, 이슈 또는 병합 요청). -
PROJECT_NAME
: GitLab 프로젝트 이름. -
COMMENTLINK
: Jira 이슈가 언급된 위치에 대한 링크. -
ENTITY_TITLE
: GitLab 커밋(첫 번째 줄), 이슈 또는 병합 요청의 제목.
-
하나의 GitLab 이슈, 병합 요청 또는 커밋 당 Jira에 하나의 상호 참조만 표시됩니다. 예를 들어, Jira 이슈를 참조하는 여러 개의 GitLab 병합 요청 댓글이 Jira에 하나의 상호 참조만 생성합니다.
이슈에 댓글을 비활성화할 수 있습니다.
병합 요청에 연관된 Jira 이슈의 필수 여부
이 통합을 통해 Jira 이슈를 참조하지 않은 경우 병합 요청을 병합하지 못하도록 할 수 있습니다. 이 기능을 활성화하려면:
- 왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.
- 설정 > 병합 요청을 선택합니다.
- 병합 확인 섹션에서 연관된 Jira 이슈 필요를 선택합니다.
- 저장을 선택합니다.
이 기능을 활성화한 후 연관된 Jira 이슈를 참조하지 않은 병합 요청을 병합할 수 없습니다. 병합 요청에는 병합하려면 제목이나 설명에 Jira 이슈 키를 언급해야 합니다라는 메시지가 표시됩니다.
GitLab에서 Jira 이슈 매칭 사용자 정의
GitLab에서 Jira 이슈 키를 매칭하는 사용자 정의 규칙을 구성할 수 있습니다.
사용자 정의 규칙을 구성하지 않은 경우 기본 동작이 사용됩니다.
정규 표현식(pattern) 정의
Jira 이슈 키를 매칭하기 위해 정규 표현식(Regex)을 사용할 수 있습니다. 정규 표현식 패턴은 RE2 구문을 따라야 합니다.
Jira 이슈 키에 대한 정규 표현식 패턴을 정의하려면:
- 왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.
- 설정 > 통합을 선택합니다.
- Jira를 선택합니다.
- Jira 이슈 매칭 섹션으로 이동합니다.
- Jira 이슈 정규 표현식 텍스트 상자에 정규 표현식 패턴을 입력합니다.
- 변경 사항 저장을 선택합니다.
자세한 정보는 Atlassian 문서를 참조하세요.
접두사 정의
Jira 이슈 키에 대해 접두사를 사용할 수 있습니다.
예를 들어, Jira 이슈 키가 ALPHA-1
이고 JIRA#
접두사를 정의하는 경우,
GitLab은 ALPHA-1
대신에 JIRA#ALPHA-1
을 매칭합니다.
Jira 이슈 키에 대한 접두사를 정의하려면:
- 왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.
- 설정 > 통합을 선택합니다.
- Jira를 선택합니다.
- Jira 이슈 매칭 섹션으로 이동합니다.
- Jira 이슈 접두사 텍스트 상자에 접두사를 입력합니다.
- 변경 사항 저장을 선택합니다.
GitLab에서 Jira 이슈 닫기
GitLab 전이 ID를 구성한 경우 GitLab에서 Jira 이슈를 직접 닫을 수 있습니다. 커밋이나 병합 요청에 트리거 단어와 Jira 이슈 ID를 사용한 경우 GitLab은:
- 언급된 Jira 이슈에 코멘트를 남깁니다.
- Jira 이슈를 닫습니다. Jira 이슈에 해결 방법이 있는 경우, 전이되지 않습니다.
예를 들어, 다음 중 하나의 트리거 단어를 사용하여 PROJECT-1
Jira 이슈를 닫을 수 있습니다:
Resolves PROJECT-1
Closes PROJECT-1
Fixes PROJECT-1
커밋이나 병합 요청은 귀하의 프로젝트의 기본 브랜치를 대상으로 해야 합니다. 프로젝트의 기본 브랜치를 프로젝트 설정에서 변경할 수 있습니다.
브랜치 이름이 Jira 이슈 ID와 일치하는 경우, 기존 병합 요청 템플릿에 자동으로 Closes <JIRA-ID>
가 추가됩니다.
이슈를 닫고 싶지 않다면 자동 이슈 닫기 비활성화하세요.
이슈 해결을 위한 사용 사례
다음 예를 참조하십시오:
- 사용자가 새로운 기능을 요청하는 Jira issue ‘PROJECT-7’를 생성합니다.
- GitLab에서 요청된 기능을 빌드하기 위해 병합 요청을 생성합니다.
- 병합 요청에서 이슈 해결 트리거 ‘Closes PROJECT-7’를 추가합니다.
- 병합 요청이 병합되면:
- GitLab이 Jira issue를 자동으로 닫습니다.
- GitLab이 해당 이슈를 해결한 커밋에 연결된 형식화된 코멘트를 Jira에 추가합니다. 코멘트 비활성화가능합니다.
자동 이슈 전환
자동 이슈 전환을 구성하면 참조된 Jira 이슈를 다음 사용 가능한 상태가 완료(Done)인 상태로 전이시킬 수 있습니다. 이 설정을 구성하려면:
- GitLab 구성 지침을 참조하십시오.
- Jira 전환 활성화 확인란을 선택합니다.
- 완료로 이동 옵션을 선택합니다.
사용자 정의 이슈 전환
고급 워크플로우를 위해 사용자 지정 Jira 전환 ID를 지정할 수 있습니다:
- Jira 구독 상태에 따라 다음 방법 중 하나를 사용합니다:
- (Jira Cloud 사용자의 경우) 텍스트 보기에서 워크플로우를 편집하여 전환 ID를 얻습니다. 전환 ID는 전환 열에 표시됩니다.
-
(Jira Server 사용자의 경우) 다음 중에서 전환 ID를 얻습니다:
- 적절한 “open” 상태에 있는 이슈를 사용하여
https://yourcompany.atlassian.net/rest/api/2/issue/ISSUE-123/transitions
와 같은 요청을 사용하여 API를 통해. - 이동하려는 전환에 대한 링크 위로 마우스를 가져가 URL에서 action 매개변수를 찾습니다. 전환 ID는 상태 변경 대상이 동일한 경우에도 워크플로우에 따라 다를 수 있습니다 (예: 이야기 대신 버그).
- 적절한 “open” 상태에 있는 이슈를 사용하여
- GitLab 구성 지침을 참조하십시오.
- Jira 전환 활성화 설정을 선택합니다.
- 사용자 정의 전환 옵션을 선택합니다.
- 텍스트 필드에 전환 ID를 입력합니다. (
,
또는;
로 구분하여 여러 전환 ID를 삽입하면 순서대로 각 상태로 이슈가 이동됩니다. 전환이 실패하면 순서가 중단됩니다.)
Jira 이슈에 대한 코멘트 비활성화
Gitlab은 Jira 이슈에 코멘트를 추가하지 않고 소스 커밋 또는 병합 요청을 Jira 이슈와 상호 연결할 수 있습니다:
- GitLab 구성 지침을 참조하십시오.
- 코멘트 활성화 확인란을 지웁니다.