---
title: '`glab mr checkout`'
stage: Create
group: Code Review
info: To determine the technical writer assigned to the Stage/Group associated with this page, see <https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments>
---

<!--
This documentation is auto generated by a script.
Please do not edit this file directly. Run `make gen-docs` instead.
-->

Check out an open merge request.

## Synopsis

Defaults to the currently checked-out branch. Use `--branch` to
override the local branch name used for the checkout.

```plaintext
glab mr checkout [<id> | <branch> | <url>] [flags]
```

## Examples

```console
glab mr checkout 1
glab mr checkout branch
glab mr checkout 12 --branch todo-fix
glab mr checkout new-feature --set-upstream-to=upstream/main
glab mr checkout https://gitlab.com/gitlab-org/cli/-/merge_requests/1234

# Uses the checked-out branch
glab mr checkout
```

## Options

```plaintext
  -b, --branch string            Check out merge request with name <branch>.
  -f, --force                    Reset local branch to remote when they have diverged. Refuses if working tree has changes that would be lost.
  -u, --set-upstream-to string   Set tracking of checked-out branch to [REMOTE/]BRANCH.
```

## Options inherited from parent commands

```plaintext
  -h, --help          Show help for this command.
  -R, --repo string   Select another repository. You can use either OWNER/REPO or GROUP/NAMESPACE/REPO. The full URL or Git URL is also accepted.
```
