I am trying to use GitHub Desktop (i.e. the GUI application - NOT command line) to go back to a previous commit (on the same branch). Something that I would have thought is a core feature, since it's the primary reason for using source control in the first place.
I can see that it's possible to revert a commit, but this is not really what I want as it creates a new commit. I would just simply like to go back with the option of going forward again, in the same way that I can just hop to a different branch.
Is this possible or is it a limitation of github desktop and I need to use the cmd line for that?
To view the previous commits, use the git log –-oneline command. This provides the commit details.
Undoing a Commit (That Has Not Been Pushed) To undo a commit that has not been pushed to a remote repository, use the reset command. Note that the reset command should be used if the commits only exist locally. If not, use the revert command, that way the history of undoing your commit is preserved.
In general, you can go back to a commit in your history with git reset
.
This is not possible with GitHub Desktop. GitHub Desktop is more of a tool to synchronize your repositories and not a full featured GUI client.
But that doesn't mean you have to use the command line, since there are alternatives. You can find a list here. To mention a few (that support git reset
):
Here is how you do it on command line. Most clients provide this in their UI using the same vocabulary (usually, you are able to select a commit and reset to it via context menu).
You will go back to the previous commit with
git reset HEAD^
or some more commits (for example 3) by
git reset HEAD^3
or to a specific commit by
git reset f7823ab
Have in mind that, by default, the option --mixed
is passed to git reset
. So, all changes made, since that commit you reset to, will still be there.
To get the original state of the commit that you want to 'revert', you have to pass --hard
. For example:
git reset f7823ab --hard
If you have a commit that you have not pushed, it is easy to undo the commit. The "undo" button appears when you have such a commit. It removes the commit from the branch's history and places the files back into the Changes area.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With