How to Force "git pull" to Overwrite Local Files

Sometimes in Git, you might find yourself needing to completely overwrite local files with what's on a remote branch. This could be due to various reasons like needing to reset your project to a clean state, discarding local changes, or if your repository is out of sync with the remote. Here's how to safely force Git to overwrite local files.

Overwriting Local Files

Warning: This process will discard all your local changes. Any local commits that haven't been pushed will also be lost.
  • Fetch All Remote Branches: First, fetch all the updates from the remote repository:
git fetch --all
  • Hard Reset: Next, reset your local branch to match a remote branch:
git reset --hard origin/<branch-name>

Replace <branch-name> with the name of the branch you want to reset to. This command forcefully synchronizes your local branch with the specified remote branch, discarding any divergent local changes.

Subscribe to GIT.WTF!?!

Don’t miss out on the latest issues. Sign up now to get access to the library of members-only issues.
[email protected]
Subscribe