gh-repo-edit(1)

GH-REPO-EDIT(1) GitHub CLI manual GH-REPO-EDIT(1)

NAME

gh-repo-edit - Edit repository settings

SYNOPSIS

gh repo edit [<repository>] [flags]

DESCRIPTION

Edit repository settings.

To toggle a setting off, use the --<flag>=false syntax.

Changing repository visibility can have unexpected consequences including but not limited to:

  • Losing stars and watchers, affecting repository ranking
  • Detaching public forks from the network
  • Disabling push rulesets
  • Allowing access to GitHub Actions history and logs

When the --visibility flag is used, --accept-visibility-change-consequences flag is required.

For information on all the potential consequences, see ⟨https://gh.io/setting-repository-visibility⟩.

When the --enable-squash-merge flag is used, --squash-merge-commit-message can be used to change the default squash merge commit message behavior:

  • default: uses commit title and message for 1 commit, or pull request title and list of commits for 2 or more
  • pr-title: uses pull request title
  • pr-title-commits: uses pull request title and list of commits
  • pr-title-description: uses pull request title and description

OPTIONS

--accept-visibility-change-consequences
Accept the consequences of changing the repository visibility

--add-topic <strings>
Add repository topic

--allow-forking
Allow forking of an organization repository

--allow-update-branch
Allow a pull request head branch that is behind its base branch to be updated

--default-branch <name>
Set the default branch name for the repository

--delete-branch-on-merge
Delete head branch when pull requests are merged

-d, --description <string>
Description of the repository

--enable-advanced-security
Enable advanced security in the repository

--enable-auto-merge
Enable auto-merge functionality

--enable-discussions
Enable discussions in the repository

--enable-issues
Enable issues in the repository

--enable-merge-commit
Enable merging pull requests via merge commit

--enable-projects
Enable projects in the repository

--enable-rebase-merge
Enable merging pull requests via rebase

--enable-secret-scanning
Enable secret scanning in the repository

--enable-secret-scanning-push-protection
Enable secret scanning push protection in the repository. Secret scanning must be enabled first

--enable-squash-merge
Enable merging pull requests via squashed commit

--enable-wiki
Enable wiki in the repository

-h, --homepage <URL>
Repository home page URL

--remove-topic <strings>
Remove repository topic

--squash-merge-commit-message <string>
The default value for a squash merge commit message: {default|pr-title|pr-title-commits|pr-title-description}

--template
Make the repository available as a template repository

--visibility <string>
Change the visibility of the repository to {public,private,internal}

EXIT CODES

0: Successful execution

1: Error

2: Command canceled

4: Authentication required

NOTE: Specific commands may have additional exit codes. Refer to the command's help for more information.

EXAMPLE

# Enable issues and wiki
$ gh repo edit --enable-issues --enable-wiki
# Disable projects
$ gh repo edit --enable-projects=false

SEE ALSO

gh-repo(1)

Jul 2026 GitHub CLI v2.96.0