---
title: "Update a branch reference to a new commit"
method: PUT
path: "/repos/{owner}/{repo}/branches/{branch}"
tags: ["repository"]
---

# Update a branch reference to a new commit

`PUT /repos/{owner}/{repo}/branches/{branch}`

## Request

- Base URL: `https://demo.gitea.com/api/v1`
- URL: `https://demo.gitea.com/api/v1/repos/{owner}/{repo}/branches/{branch}`
- Auth: one of:
  - HTTP basic
  - API key in query parameter `token`
  - API key in query parameter `access_token`
  - API key in header `Authorization`
  - API key in query parameter `sudo`
  - API key in header `Sudo`
  - API key in header `X-GITEA-OTP`
- TypeScript: <https://skmtc.dev/gitea/apis/gitea-api/docs/repos/:owner/:repo/branches/:branch/put.ts> (a function with typed inputs; its response is checked against the schema)

## Path parameters

- `owner` string, required
- `repo` string, required
- `branch` string, required

## Request body

- UpdateBranchRepoOption: UpdateBranchRepoOption options when updating a branch reference in a repository
  - `force` boolean: Force update even if the change is not a fast-forward
  - `new_commit_id` string, required: New commit SHA (or any ref) the branch should point to
  - `old_commit_id` string: Expected old commit SHA of the branch; if provided it must match the current tip

## Response `204`

APIEmpty is an empty response

## Other responses

- `default`: APIError is error format response

## Changes

- **2026-10-28** `7ef50c4c527f`: 4 info
  - removed the non-success response with the status `403`
  - removed the non-success response with the status `404`
  - removed the non-success response with the status `409`
  - removed the non-success response with the status `422`
- **2026-07-13** `4df6be504c96`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/gitea/apis/gitea-api/changes/repos/:owner/:repo/branches/:branch/put.md)

---

[API](https://skmtc.dev/gitea/apis/gitea-api.md) - [All operations](https://skmtc.dev/gitea/apis/gitea-api/llms.txt) - [OpenAPI document](https://skmtc.dev/gitea/apis/gitea-api/revisions/d712da0399fd?raw)
