Skip to content

Instantly share code, notes, and snippets.

@qingl97
Last active June 14, 2024 23:17
Show Gist options
  • Save qingl97/44419227ae5eac116ace to your computer and use it in GitHub Desktop.
Save qingl97/44419227ae5eac116ace to your computer and use it in GitHub Desktop.
Reset local repository to be just like remote repository HEAD

Setting your branch to exactly match the remote branch can be done in two steps:

git fetch origin
git reset --hard origin/master

If you want to save your current branch's state before doing this (just in case), you can do:

git commit -a -m "Saving my work, just in case"
git branch my-saved-work

Now your work is saved on the branch "my-saved-work" in case you decide you want it back (or want to look at it later or diff it against your updated branch).

Note that the first example assumes that the remote repo's name is "origin" and that the branch named "master" in the remote repo matches the currently checked-out branch in your local repo.

BTW, this situation that you're in looks an awful lot like a common case where a push has been done into the currently checked out branch of a non-bare repository. Did you recently push into your local repo? If not, then no worries -- something else must have caused these files to unexpectedly end up modified. Otherwise, you should be aware that it's not recommended to push into a non-bare repository (and not into the currently checked-out branch, in particular).

Ref:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment