To find out the sha of the latest commit, run the command :
$ git reflog
It will provide all the HEADs of all branches. After this, simply run the command given below to recreate a branch using sha :
$ git branch branchName <sha>
Voila ! This is how you can restore local branches in GitHub 💡
WORST CASE :
In my case, I re-installed the OS which resulted in deleting all the local branches of my repository. Even git reflog was not able to save me this time 😓. I lost sha of all the commits and all the local branches of my repository. So, after brainstorming, I landed up with the solution described below :
$ git checkout master
# Switched to branch 'master'
$ git fetch --all
# updates local copies of remote branches
$ git branch -a
# List all your branches
$ git checkout branch-name
# Switched to branch 'branch-name'
$ git log
# View the commit history
Note : This solution is also useful if you are cloning the repository on new/other laptop or you ended fucking up the re-base so badly that you deleted the repository and cloned a new one 😂 , which might result in deleting all the local branches of your repository and worst case, you even lost sha of the commits 🤷🏻♀️
Happy Git ! ❤️
Top comments (0)