gitgit-checkout

Git checkout - switching back to HEAD


I've been doing my project while at some point I discovered that one thing stopped working. I needed to look up the state of my code when it was working correctly, so I've decided to use git checkout (because I wanted to check-something-out). And so I've done

git checkout SHA

couple times while going back to point from which I can't go to HEAD, the output is following:

git checkout SHA-HEAD

error: Your local changes to the following files would be overwritten by checkout:
    [list of files]
Please, commit your changes or stash them before you can switch branches.
Aborting

I am pretty much sure I have NOT changed anything. The command

git checkout master

gives the same output.

Is there a way to go back to HEAD?

What is the safe way of "jumping over" history commits?


Solution

  • You can stash (save the changes in temporary place) then, back to master branch HEAD.

    $ git add .
    $ git stash
    $ git checkout master
    

    Note that some sites have changed the name of the default branch from "master" to "main" so you might have to use git checkout main instead.


    Jump Over Commits Back and Forth: