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

gh-repo-create - Create a new repository

gh repo create [<name>] [flags]

Create a new GitHub repository.

To create a repository interactively, use gh repo create with no arguments.

To create a remote repository non-interactively, supply the repository name and one of --public, --private, or --internal. Pass --clone to clone the new repository locally.

If the OWNER/ portion of the OWNER/REPO name argument is omitted, it defaults to the name of the authenticating user.

To create a remote repository from an existing local repository, specify the source directory with --source. By default, the remote repository name will be the name of the source directory.

Pass --push to push any local commits to the new repository. If the repo is bare, this will mirror all refs.

For language or platform .gitignore templates to use with --gitignore, ⟨https://github.com/github/gitignore⟩.

For license keywords to use with --license, run gh repo license list or visit ⟨https://choosealicense.com⟩.

The repo is created with the configured repository default branch, see ⟨https://docs.github.com/en/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-user-account-settings/managing-the-default-branch-name-for-your-repositories⟩.

Add a README file to the new repository
Clone the new repository to the current directory
Description of the repository
Disable issues in the new repository
Disable wiki in the new repository
Specify a gitignore template for the repository
Repository home page URL
Include all branches from template repository
Make the new repository internal
Specify an Open Source License for the repository
Make the new repository private
Make the new repository public
Push local commits to the new repository
Specify remote name for the new repository
Specify path to local repository to use as source
The name of the organization team to be granted access
Make the new repository based on a template repository

gh repo new

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.

# Create a repository interactively
$ gh repo create
# Create a new remote repository and clone it locally
$ gh repo create my-project --public --clone
# Create a new remote repository in a different organization
$ gh repo create my-org/my-project --public
# Create a remote repository from the current directory
$ gh repo create my-project --private --source=. --remote=upstream

gh-repo(1)

Jun 2025