Reset local repository branch to be just like remote repository HEAD

后端 未结 21 1605
挽巷
挽巷 2020-11-22 02:19

How do I reset my local branch to be just like the branch on the remote repository?

I did:

git reset --hard HEAD

But when I run a <

21条回答
  •  悲哀的现实
    2020-11-22 03:15

    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).

提交回复
热议问题