---
name: "gh-repo-deploy-key-add"
section: "1"
platform: "linux"
package: "github-cli"
version: "2.102.1-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/gh-repo-deploy-key-add"
---

# gh-repo-deploy-key-add(1)

Add a deploy key to a GitHub repository

## NAME

gh-repo-deploy-key-add - Add a deploy key to a GitHub repository

## SYNOPSIS

**gh repo deploy-key add \<key-file\> \[flags\]**

## DESCRIPTION

Add a deploy key to a GitHub repository.

Note that any key added by gh will be associated with the current authentication token. If you de-authorize the GitHub CLI app or authentication token from your account, any deploy keys added by GitHub CLI will be removed as well.

## OPTIONS

- **-w**, **--allow-write**

  Allow write access for the key

- **-t**, **--title** **\<string\>**

  Title of the new key

## OPTIONS INHERITED FROM PARENT COMMANDS

- **-R**, **--repo** **\<\[HOST/\]OWNER/REPO\>**

  Select another repository using the \[HOST/\]OWNER/REPO format

## 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

```
# Generate a passwordless SSH key and add it as a deploy key to a repository
$ ssh-keygen -t ed25519 -C "my description" -N "" -f ~/.ssh/gh-test
$ gh repo deploy-key add ~/.ssh/gh-test.pub
```

## SEE ALSO

**[gh-repo-deploy-key(1)](/gh-repo-deploy-key/1.md)**
