Files
docs/cli-docs/reference/branch/protect.md
T
bircni 55c3a392a1 feat: generate the gt command reference from gitea/cli
update_cli_docs.sh runs gt's own generator and lays the pages out for the
site: one directory per command group, front matter, titles, sidebar
order, fenced help text and rewritten links. --released succeeds while no
series is documented. A weekly workflow proposes updates like the runner's.

Signed-off-by: bircni <[email protected]>
2026-10-22 11:28:15 +02:00

2.5 KiB

sidebar_position, description
sidebar_position description
4 Protect branches

gt branch protect

Protect branches

Synopsis

Add a protection rule for each existing branch, or with --pattern for every branch matching a
glob. By default nobody can push directly and pull requests need one approving review.

When a branch or pattern has a rule already, change only the settings the flags name and keep
the others; --allow-push replaces those who may push directly.
gt branch protect <branch>... [flags]

Examples

# Require two approvals and passing CI on main
$ gt branch protect main --required-approvals 2 --status-check ci/build

# Let the release team push to every release branch
$ gt branch protect --pattern 'release/*' --allow-push acme/release

Options

      --allow-push strings          Users, or teams as ORG/TEAM, that may push directly
      --block-on-rejected-reviews   Block merging while changes are requested
      --dismiss-stale-approvals     Dismiss approvals when new commits are pushed
  -h, --help                        help for protect
      --pattern string              Protect the branches matching this glob, such as release/*
      --required-approvals int      Approving reviews that pull requests need (default 1)
      --status-check strings        Status checks that must pass (repeatable)

Options inherited from parent commands

      --cwd directory       Working directory for repository discovery
      --debug               Log the method, URL, status, and duration of each HTTP request to stderr
      --host URL            Gitea instance URL, including any base path
      --interactive         Allow prompts with machine output
  -q, --jq expression       Filter JSON output using a jq expression; implies --json
      --json fields[="*"]   Output JSON with the specified comma-separated fields, or all fields
      --no-input            Disable prompts and implicit editor/browser interactions
      --remote remote       Git remote used for repository discovery
  -R, --repo OWNER/REPO     Select a repository as OWNER/REPO or URL
      --sudo user           Perform API requests as this user (requires an administrator account)
      --user name           Account name on the selected instance
  -y, --yes                 Accept confirmations without prompting

SEE ALSO

  • gt branch: Manage remote branches and protection rules