Jira 이슈 관리

Tier: Free, Premium, Ultimate Offering: GitLab.com, Self-managed, GitLab Dedicated

GitLab에서 Jira 이슈를 직접 관리할 수 있습니다.

그런 다음 GitLab 커밋 및 병합 요청에서 ID로 Jira 이슈를 참조할 수 있습니다.

Jira 이슈 ID는 대문자여야 합니다.

GitLab 활동과 Jira 이슈 교차 참조

이 통합을 통해 GitLab 이슈, 병합 요청 및 Git에서 작업하는 동안 Jira 이슈를 교차 참조할 수 있습니다.

GitLab 이슈, 병합 요청, 댓글 또는 커밋에서 Jira 이슈를 언급하면:

  • GitLab은 GitLab에서 언급으로부터 Jira 이슈에 링크합니다.
  • GitLab은 Jira 이슈에 GitLab의 이슈, 병합 요청 또는 커밋으로 돌아가는 링크가 있는 형식화된 댓글을 추가합니다.

예를 들어, 이 커밋이 GIT-1 Jira 이슈를 참조하면:

git commit -m "GIT-1 this is a test commit"  

GitLab은 해당 Jira 이슈에 다음을 추가합니다:

  • Web links 섹션에 참조.
  • 이 형식을 따르는 Activity 섹션의 댓글:

    USER가 [PROJECT_NAME|COMMENTLINK]의 RESOURCE_NAME에서 이 이슈를 언급했습니다:  
    ENTITY_TITLE  
    
    • USER: Jira 이슈를 언급한 사용자 이름과 GitLab 사용자 프로필 링크.
    • RESOURCE_NAME: Jira 이슈를 참조한 자원의 유형(예: GitLab 커밋, 이슈 또는 병합 요청).
    • PROJECT_NAME: GitLab 프로젝트 이름.
    • COMMENTLINK: Jira 이슈가 언급된 위치의 링크.
    • ENTITY_TITLE: GitLab 커밋(첫 번째 줄), 이슈 또는 병합 요청의 제목.

GitLab 이슈, 병합 요청 또는 커밋당 Jira에서 한 번만 교차 참조가 표시됩니다.

예를 들어, Jira 이슈를 언급하는 여러 GitLab 병합 요청 댓글은 Jira에서 해당 병합 요청에 대한 단일 교차 참조만 생성합니다.

이슈에 대한 댓글 비활성화를 할 수 있습니다.

병합 요청을 병합하기 위해 관련된 Jira 이슈 요구

Tier: Ultimate Offering: GitLab.com, Self-managed, GitLab Dedicated

이 통합을 통해 Jira 이슈를 참조하지 않는 병합 요청이 병합되는 것을 방지할 수 있습니다.

이 기능을 활성화하려면:

  1. 왼쪽 사이드바에서 Search or go to를 선택하고 프로젝트를 찾습니다.
  2. Settings > Merge requests를 선택합니다.
  3. Merge checks 섹션에서 Require an associated issue from Jira를 선택합니다.
  4. Save를 선택합니다.

이 기능을 활성화하면 관련된 Jira 이슈를 참조하지 않는 병합 요청은 병합할 수 없습니다. 병합 요청에는 병합하려면 제목이나 설명에 Jira 이슈 키가 언급되어야 합니다라는 메시지가 표시됩니다.

GitLab에서 Jira 이슈 매칭 사용자 정의

GitLab이 Jira 이슈 키를 매칭하는 방법에 대한 사용자 정의 규칙을 정의하여 구성할 수 있습니다:

사용자 정의 규칙을 구성하지 않으면
기본 동작이 사용됩니다.

정규 표현식 패턴 정의

정규 표현식(regex)을 사용하여 Jira 이슈 키를 매칭할 수 있습니다.

정규 표현식 패턴은 RE2 구문을 따라야 합니다.

Jira 이슈 키에 대한 정규 표현식 패턴을 정의하려면:

  1. 왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.

  2. 설정 > 통합을 선택합니다.

  3. Jira를 선택합니다.

  4. Jira 이슈 매칭 섹션으로 이동합니다.

  5. Jira 이슈 regex 텍스트 상자에 정규 표현식 패턴을 입력합니다.

  6. 변경 사항 저장을 선택합니다.

더 많은 정보는 Atlassian 문서를 참조하세요.

접두사 정의

접두사를 사용하여 Jira 이슈 키를 매칭할 수 있습니다.

예를 들어, Jira 이슈 키가 ALPHA-1이고 JIRA# 접두사를 정의하면 GitLab은 ALPHA-1이 아닌 JIRA#ALPHA-1과 매칭됩니다.

Jira 이슈 키에 대한 접두사를 정의하려면:

  1. 왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.

  2. 설정 > 통합을 선택합니다.

  3. Jira를 선택합니다.

  4. Jira 이슈 매칭 섹션으로 이동합니다.

  5. Jira 이슈 접두사 텍스트 상자에 접두사를 입력합니다.

  6. 변경 사항 저장을 선택합니다.

GitLab에서 Jira 이슈 닫기

GitLab 전환 ID를 구성한 경우, GitLab에서 직접 Jira 이슈를 닫을 수 있습니다. 커밋 또는 머지 요청에 트리거 단어와 Jira 이슈 ID를 사용하세요.

트리거 단어와 Jira 이슈 ID가 포함된 커밋을 푸시하면 GitLab은:

  1. 언급된 Jira 이슈에 댓글을 달고.

  2. Jira 이슈를 닫습니다. Jira 이슈에 해결방법이 있는 경우, 전환되지 않습니다.

예를 들어, 다음의 트리거 단어 중 하나를 사용하여 Jira 이슈 PROJECT-1을 닫으세요:

  • Resolves PROJECT-1
  • Closes PROJECT-1
  • Fixes PROJECT-1

커밋이나 머지 요청은 프로젝트의 기본 브랜치를 대상으로 해야 합니다.

프로젝트의 기본 브랜치는 프로젝트 설정에서 변경할 수 있습니다.

브랜치 이름이 Jira 이슈 ID와 일치하는 경우, Closes <JIRA-ID>가 기존의 머지 요청 템플릿에 자동으로 추가됩니다.

이슈를 닫고 싶지 않은 경우, 자동 이슈 닫기 비활성화를 선택하세요.

이슈 닫기에 대한 사용 사례

다음 예를 고려하세요:

  1. 사용자가 새 기능 요청을 위해 Jira 이슈 PROJECT-7을 생성합니다.

  2. 요청된 기능을 구축하기 위해 GitLab에서 머지 요청을 생성합니다.

  3. 머지 요청에 이슈 닫기 트리거 Closes PROJECT-7을 추가합니다.

  4. 머지 요청이 병합되면:

    • GitLab이 Jira 이슈를 닫습니다.
    • GitLab이 이슈를 해결한 커밋에 링크된 포맷된 댓글을 Jira에 추가합니다. 댓글을 비활성화할 수 있습니다.

자동 이슈 전환

자동 이슈 전환을 구성하면, 참조된 Jira 이슈를 완료 카테고리의 다음 상태로 전환할 수 있습니다. 이 설정을 구성하려면:

  1. GitLab 구성 지침을 참조하세요.

  2. Jira 전환 활성화 체크박스를 선택합니다.

  3. 완료로 이동 옵션을 선택합니다.

사용자 지정 문제 전환

고급 워크플로우의 경우, 사용자 지정 Jira 전환 ID를 지정할 수 있습니다:

  1. Jira 구독 상태에 기반한 방법을 사용하세요:
    • (Jira Cloud 사용자) 텍스트 보기에서 워크플로우를 편집하여 전환 ID를 얻습니다. 전환 ID는 전환 열에 표시됩니다.
    • (Jira Server 사용자) 다음 방법 중 하나로 전환 ID를 얻습니다:
      • API를 사용하여 https://yourcompany.atlassian.net/rest/api/2/issue/ISSUE-123/transitions와 같은 요청을 합니다. 이때 적절한 “열림” 상태의 문제를 사용합니다.
      • 원하는 전환의 링크 위에 마우스를 올려 놓고 URL에서 action 매개변수를 찾습니다. 전환 ID는 워크플로우 간에 다를 수 있습니다 (예: 스토리 대신 버그), 변경하려는 상태가 동일하더라도 말입니다.
  2. GitLab 구성 지침을 참조하세요.

  3. Jira 전환 활성화 설정을 선택하세요.

  4. 사용자 지정 전환 옵션을 선택하세요.

  5. 텍스트 필드에 전환 ID를 입력하세요. 여러 개의 전환 ID를 삽입할 경우(구분자로 , 또는 ; 사용), 문제는 지정한 순서대로 각 상태로 이동합니다. 전환이 실패하면 순서는 중단됩니다.

Jira 문제에 대한 댓글 비활성화

GitLab은 Jira 문제에 댓글을 추가하지 않고 소스 커밋 또는 병합 요청을 Jira 문제와 교차 링크할 수 있습니다:

  1. GitLab 구성 지침을 참조하세요.

  2. 댓글 활성화 체크박스를 해제하세요.