Skip to content

GitLab Next

    • GitLab: the DevOps platform
    • Explore GitLab
    • Install GitLab
    • How GitLab compares
    • Get started
    • GitLab docs
    • GitLab Learn
  • Pricing
  • Talk to an expert
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
    • Menu
    Projects Groups Snippets
  • Get a free trial
  • Sign up
  • Login
  • Sign in / Register
  • GitLab FOSS GitLab FOSS
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Locked Files
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Service Desk
    • Milestones
    • Iterations
    • Requirements
  • Merge requests 0
    • Merge requests 0
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages & Registries
    • Packages & Registries
    • Package Registry
    • Container Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Metrics
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • Code review
    • Insights
    • Issue
    • Repository
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Commits
  • Issue Boards
Collapse sidebar

GitLab 15.0 is launching on May 22! This version brings many exciting improvements, but also removes deprecated features and introduces breaking changes that may impact your workflow. To see what is being deprecated and removed, please visit Breaking changes in 15.0 and Deprecations.

  • GitLab.org
  • GitLab FOSSGitLab FOSS
  • Merge requests
  • !10356
Project 'gitlab-org/gitlab-ce' was moved to 'gitlab-org/gitlab-foss'. Please update any links and bookmarks that may still have the old path.
Merged
Created Mar 31, 2017 by James Edwards-Jones@jamedjoContributor6 of 10 tasks completed6/10 tasks
  • Review changes

  • Download
  • Email patches
  • Plain diff

Protected Tags

  • Overview 130
  • Commits 58
  • Pipelines 24
  • Changes 83

What

Protected tags feature, similar to protected branches

Prevents tag deletion and force pushing for everyone, and uses access levels (Masters, Developers + Masters, or No one) to control who can create tags. Supports wildcard matching.

Why

To give project admins control over who can create/update/delete tags. Especially useful when tags are used to trigger deploys or official releases.

Questions

  • Should users be able to update protected tag ‘release notes’?
  • UX: Should tags index have link similar to Protected branches can be managed in project_settings_link.

Documentation preview

https://gitlab.com/gitlab-org/gitlab-ce/blob/18471-restrict-tag-pushes-protected-tags/doc/user/project/protected_tags.md

Screenshots

Settings

Protected Tags Settings

Over git

Protected Tags Over Git

Project tags

These have the delete button disabled and a Protected label

Tags Index Tags Show
Tags index with labels and disabled delete buttons Protected Tags Show Page

ProtectedTags#show

Tags Matching Protection Wildcard

Todos

  • Changelog entry added, if necessary
  • Tests added for this feature/bug
  • EE Merge request
  • Change restriction on force pushing to restriction on update in line with current git behaviour
  • Double check API access

Follow up tasks

  • Documentation created/updated
  • EE-only per user / per-group protections https://gitlab.com/gitlab-org/gitlab-ee/issues/2132
  • API support added
    • This could be done alongside updating the protected branches API which currently uses deprecated developers_can_push style permissions (https://gitlab.com/gitlab-org/gitlab-ce/issues/30102)

Relevant issues

Closes #18471 (closed)

Assignee
Assign to
Reviewer
Request review from
Time tracking
Source branch: 18471-restrict-tag-pushes-protected-tags