What are 'protected tags' in GitHub, and what do they prevent?
Select an answer to reveal the explanation.
Short Explanation and Infographic
Tags are how you mark releases, and once you've tagged v1.0, you don't want anyone moving or deleting that reference. Protected tags use rules to prevent unauthorized deletion or update of specific tag patterns.
Full explanation below image
Full Explanation
Protected tags in GitHub (configured through repository rulesets) prevent unauthorized users from creating, updating, or deleting tags matching specified patterns. This is critical for release integrity: (1) Preventing deletion of release tags that external systems reference (package registries, deployment pipelines). (2) Ensuring semantic version tags (v1.0, v2.3.1) cannot be moved to different commits after publication. (3) Maintaining an accurate, tamper-proof release history. Tag protection rules can be configured using wildcard patterns (e.g., 'v*' protects all version tags) and can define bypass allowances for specific users or teams who legitimately need to manage releases. Protected tags are configured via rulesets or the older branch/tag protection interface.