Can I revert commits directly on GitHub?

GitGithub

Git Problem Overview


It seems like you can do just about everything else directly on GitHub using the web interface, like edit and create and delete files, but I am unable to find a way to revert a commit, like you can in the GitHub local apps (Windows, and Mac) and like you can do on the git command line.

I'm just wondering am I just missing something. Is the revert button hidden?

I tried searching online and came across something that seemed to suggest that this was to prevent synchronization errors when working with lots of people. Is this correct?

Git Solutions


Solution 1 - Git

No, that feature isn't directly available on the GitHub web interface (as opposed to the "Revert" button recently added for GitHub for Mac/Windows)

Actually, it is for pull requests only, since June 24th, 2014:

Introducing the Revert Button

> you can easily revert a pull request on GitHub by clicking Revert:

https://camo.githubusercontent.com/0d3350caf2bb1cba53123ffeafc00ca702b1b164/68747470733a2f2f6769746875622d696d616765732e73332e616d617a6f6e6177732e636f6d2f68656c702f70756c6c5f72657175657374732f7265766572742d70756c6c2d726571756573742d6c696e6b2e706e67

> You'll be prompted to create a new pull request with the reverted changes:

https://camo.githubusercontent.com/973efae3cc2764fc1353885a6a45b9a518d9b78b/68747470733a2f2f6769746875622d696d616765732e73332e616d617a6f6e6177732e636f6d2f68656c702f70756c6c5f72657175657374732f7265766572742d70756c6c2d726571756573742d6e65772d70722e706e67


git revert is a bit more complex to manage through the web as it can accept a range of commit.
It shouldn't be an issue in term of collaboration though: a revert adds a new commit, it doesn't change the history of existing commit.

Solution 2 - Git

If you want to use just github web. There is a tedious way though.

Step 1. Goto commit history, find the commit hash which you want to revert to; and click "Browse repo at this point in history"

Step 2. Create a new branch from this commit hash (say "temp")

Step 3. Delete the branch which had the problem (say "main")

Step 4. Goto "temp" branch and create "main" branch from it. And you're done.

Ofcourse, this is not a good way and it might only work for recently created commits.

Solution 3 - Git

You can't revert back to that commit on the GitHub web site, there is no option to do this action, Instead, you should use command-line or GitHub Desktop as below

enter image description here

> After REVERT, do not forget to PUSH the code. For more details, check the link How to restore deleted files on GitHub website?

Solution 4 - Git

> This worked for me (GITHUB).

 1) git reset --hard HEAD^   
 2) git push origin -f

> Note:- These lines reverts commit back one by one.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionphocksView Question on Stackoverflow
Solution 1 - GitVonCView Answer on Stackoverflow
Solution 2 - GitvohrahulView Answer on Stackoverflow
Solution 3 - GitMohamedView Answer on Stackoverflow
Solution 4 - GitZia UllahView Answer on Stackoverflow