- 보호된 태그를 수정할 수 있는 사람
 - 보호된 태그 구성
 - 와일드카드 보호된 태그
 - 동일한 이름의 브랜치와 태그 생성 방지
 - 배포 키를 사용하여 보호된 태그 생성 허용
 - 보호된 태그에서 파이프라인 실행
 - 보호된 태그 삭제
 - 관련 주제
 
보호된 태그
Offering: GitLab.com, Self-managed, GitLab Dedicated
보호된 태그:
- 태그 생성 권한을 제어할 수 있습니다.
 - 생성된 후에는 우발적인 업데이트나 삭제를 방지합니다.
 
각 규칙은 다음을 일치시키도록 허용합니다:
- 개별 태그 이름.
 - 여러 태그를 동시에 제어하기 위한 와일드카드.
 
이 기능은 보호된 브랜치에서 발전하였습니다.
보호된 태그를 수정할 수 있는 사람
기본적으로:
- 태그를 생성하거나 삭제하려면 Maintainer 역할이 필요합니다.
 - 보호된 태그는 UI 또는 API를 사용하여 삭제할 수 있습니다.
 
보호된 태그 구성
사전 요구 사항:
- 프로젝트에 대해 최소한 Maintainer 역할이 있어야 합니다.
 
- 왼쪽 사이드바에서 Search or go to를 선택하고 프로젝트를 찾습니다.
 - Settings > Repository를 선택합니다.
 - Protected tags를 확장합니다.
 - Add new를 선택합니다.
 - 단일 태그를 보호하려면 Tag를 선택한 다음 드롭다운 목록에서 태그를 선택합니다.
 - 문자열과 일치하는 모든 태그를 보호하려면:
    
- Tag를 선택합니다.
 - 태그 일치에 사용할 문자열을 입력합니다. 와일드카드(
*)가 지원됩니다. - Create wildcard를 선택합니다.
 
 - 
    
Allowed to create에서 보호된 태그를 생성할 수 있는 역할을 선택합니다.
GitLab Premium 및 Ultimate에서는 Allowed to create에 그룹이나 개별 사용자를 추가할 수 있습니다. - Protect를 선택합니다.
 
보호된 태그(또는 와일드카드)가 Protected tags 목록에 표시됩니다.
와일드카드 보호된 태그
와일드카드 보호된 태그를 지정할 수 있으며, 이는 와일드카드와 일치하는 모든 태그를 보호합니다. 예를 들어:
| 와일드카드 보호된 태그 | 일치하는 태그 | 
|---|---|
v* | 
      
v1.0.0, version-9.1
 | 
    
*-deploy | 
      
march-deploy, 1.0-deploy
 | 
    
*gitlab* | 
      
gitlab, gitlab/v1
 | 
    
* | 
      
v1.0.1rc2, accidental-tag
 | 
    
두 개의 다른 와일드카드가 같은 태그와 일치할 수 있습니다. 예를 들어, *-stable과 production-*는 모두 production-stable 태그와 일치합니다. 이 경우, 이러한 보호된 태그 중 어떤 것이든 Allowed to create와 같은 설정을 가지고 있다면, production-stable도 이 설정을 상속받습니다.
보호된 태그의 이름을 선택하면 GitLab은 일치하는 모든 태그 목록을 표시합니다:
동일한 이름의 브랜치와 태그 생성 방지
동일한 이름을 가진 태그와 브랜치는 서로 다른 커밋을 포함할 수 있습니다. 태그와 브랜치가 동일한 이름을 사용하면 git checkout 명령을 실행하는 사용자가 _tag_ qa를 체크아웃할 수 있지만 사실은 _branch_ qa를 체크아웃하려고 했을 수 있습니다. 추가적인 보안 조치를 위해, 동일한 이름의 태그를 생성하는 것을 피하세요. 두 개를 혼동하는 것은 잠재적인 보안 또는 운영 문제를 초래할 수 있습니다.
이 문제를 방지하기 위해:
- 태그로 사용하고 싶지 않은 브랜치 이름을 식별합니다.
 - 
    
보호된 태그 구성에서 설명한 대로 보호된 태그를 생성합니다:
- 
Name에는 
stable과 같은 이름을 제공합니다.stable-*와 같은 와일드카드를 생성하여stable-v1및stable-v2와 같은 여러 이름과 일치시킬 수 있습니다. - Allowed to Create에서 No one을 선택합니다.
 - Protect를 선택합니다.
 
 - 
Name에는 
 
사용자는 여전히 브랜치를 생성할 수 있지만 보호된 이름으로 태그를 생성할 수는 없습니다.
배포 키를 사용하여 보호된 태그 생성 허용
- 도입됨 GitLab 15.11에서.
 
배포 키의 소유자가 보호된 태그를 생성할 수 있도록 허용할 수 있습니다.
배포 키는 사용자가 관련 프로젝트의 멤버가 아니더라도 작동합니다. 그러나 배포 키의 소유자는 프로젝트에 대한 읽기 권한을 가져야 합니다.
전제 조건:
- 배포 키는 귀하의 프로젝트에 대해 활성화되어 있어야 합니다. 프로젝트 배포 키는 생성될 때 기본적으로 활성화됩니다. 그러나 공개 배포 키는 프로젝트에 대한 접근 권한을 부여받아야 합니다.
 - 배포 키는 귀하의 프로젝트 저장소에 쓰기 접근 권한이 있어야 합니다.
 
배포 키가 보호된 태그를 생성하도록 허용하려면:
- 
    
왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.
 - 
    
설정 > 저장소를 선택합니다.
 - 
    
보호된 태그를 확장합니다.
 - 
    
태그 드롭다운 목록에서 보호할 태그를 선택합니다.
 - 
    
생성 허용 대상 목록에서 배포 키를 선택합니다.
 - 
    
보호를 선택합니다.
 
보호된 태그에서 파이프라인 실행
보호된 태그를 생성할 수 있는 권한은 사용자가 다음을 수행할 수 있는지를 정의합니다:
- CI/CD 파이프라인을 시작하고 실행할 수 있습니다.
 - 이러한 태그와 관련된 작업에서 작업을 실행할 수 있습니다.
 
이러한 권한은 권한이 있는 사용자만 보호된 태그에 대한 CI/CD 프로세스를 트리거하고 관리할 수 있도록 보장합니다.
보호된 태그 삭제
GitLab API 또는 GitLab 사용자 인터페이스를 사용하여 보호된 태그를 수동으로 삭제할 수 있습니다.
전제 조건:
- 프로젝트에서 적어도 Maintainer 역할이 있어야 합니다.
 
이를 수행하려면:
- 
    
왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.
 - 
    
코드 > 태그를 선택합니다.
 - 
    
삭제하려는 태그 옆에서 삭제()를 선택합니다.
 - 
    
확인 대화 상자에서 태그 이름을 입력하고 예, 보호된 태그 삭제를 선택합니다.
 
보호된 태그는 GitLab UI 또는 API를 통해서만 삭제할 수 있습니다.
이러한 보호 기능은 로컬 Git 명령이나 타사 Git 클라이언트를 통해 태그를 실수로 삭제하는 것을 방지합니다.

        도움말