---
name: "gt-pr-checkout"
section: "1"
platform: "linux"
package: "gitea-cli"
version: "1.0.0-1"
release: "Arch Linux 2026-11-07"
platforms: ["linux"]
url: "https://carta.tech/man/gt-pr-checkout"
---

# gt-pr-checkout(1)

Check out a pull request

## NAME

gt-pr-checkout - Check out a pull request

## SYNOPSIS

**gt pr checkout {\<number\> \| \<url\> \| \<branch\>} \[flags\]**

## DESCRIPTION

Check out the head of a pull request in a local branch that tracks the head branch, so that pr commands without an argument select the pull request, and git push updates it when the branch is named like the head branch. gt prints the push command for a branch named otherwise.

An existing branch of the pull request is reused: one with commits on top of the head is checked out as it is, and one behind the head is fast-forwarded with --update. An existing branch named with --branch that is not of the pull request is refused.

### ARGUMENTS

```
A pull request can be supplied as argument in any of the following formats:
- by number, such as "13" or "#13"
- by URL, such as "https://gitea.com/OWNER/REPO/pulls/13"
- by the name of its head branch, such as "feature/login" or "bob:feature/login"; a branch that
  reads as OWNER/REPO#N, such as "fix/login#2", needs the OWNER:BRANCH form
```

### JSON FIELDS

```
branch, commit, detached, remote, tracking
```

## OPTIONS

**-b**, **--branch**=""\
 	Local branch name (default: the head branch name when free, else OWNER/BRANCH or pr/NUMBER)

**--detach**\[=false\]\
 	Check out the PR commit without creating or changing a branch

**-h**, **--help**\[=false\]\
 	help for checkout

**--update**\[=false\]\
 	Fast-forward an existing branch to the PR head; reject divergence

## OPTIONS INHERITED FROM PARENT COMMANDS

**--csv**\[=""\]\
 	Output CSV with the specified comma-separated **fields**, or all fields

**--cwd**=""\
 	Working **directory** for repository discovery

**--debug**\[=false\]\
 	Log the method, URL, status, and duration of each HTTP request to stderr

**--host**=""\
 	Gitea instance **URL**, including any base path

**--interactive**\[=false\]\
 	Allow prompts with machine output

**-q**, **--jq**=""\
 	Filter JSON output using a jq **expression**; implies --json

**--json**\[=""\]\
 	Output JSON with the specified comma-separated **fields**, or all fields

**--no-input**\[=false\]\
 	Disable prompts and implicit editor/browser interactions

**--remote**=""\
 	Git **remote** used for repository discovery

**-R**, **--repo**=""\
 	Select a repository as **OWNER/REPO** or URL

**--sudo**=""\
 	Perform API requests as this **user** (requires an administrator account)

**--user**=""\
 	Account **name** on the selected instance

## EXAMPLE

```
$ gt pr checkout 13
$ gt pr co feature/login
$ gt pr checkout 13 --update
```

## SEE ALSO

**[gt-pr(1)](/man/gt-pr/1.md)**
