Reset a local branch to remote state in Git

David Y.
jump to solution

The Problem

How do I reset the state of a branch in a local Git repository to that of a remote branch?

The Solution

There are two commands you can use to achieve this. First, download all remote branches with git fetch:

git fetch origin # <-- name of remote, change if not origin

Second, use git reset to sync the local branch with the remote branch:

git reset --hard origin/main

This process will destroy any uncommitted work, as well as any unpushed commits, so caution is advised. Consider making a backup of the local state on a separate branch, before running git reset:

git commit -a -m "Backup of local work"
git branch local-work

Further Reading

If you’re looking to get a deeper understanding of how web performance optimization works, take a look at the following articles:

Considered "not bad" by 4 million developers and more than 150,000 organizations worldwide, Sentry provides code-level observability to many of the world's best-known companies like Disney, Peloton, Cloudflare, Eventbrite, Slack, Supercell, and Rockstar Games. Each month we process billions of exceptions from the most popular products on the internet.

Sentry