DEV Community

loading...
Cover image for Useful Git commands that may save your life

Useful Git commands that may save your life

Pratap Sharma
I'm a self-taught Full Stack Software Developer, Technical Writer, and React/React-Native Trainer.
Originally published at pratapsharma.in ・2 min read

Git commands aren't always easy. If they were, we would have these commands at our disposal. They would be super helpful for performing everyday tasks like creating or renaming a git branch, removing files, and undoing changes.

In this post, I’m focusing on major git commands that gets all (almost) your work fulfilled.

How to undo the most recent local commits in Git?

You can run

$ git reset HEAD~1
Enter fullscreen mode Exit fullscreen mode

You can even undo your commit but leave your files and your index:

$ git reset --soft HEAD~1
Enter fullscreen mode Exit fullscreen mode

If you want to permanently undo the commit and you have cloned some repository:
To get commit id:

$ git log
Enter fullscreen mode Exit fullscreen mode
$ git reset --hard <commit_id>

$ git push origin <branch_name> -f
Enter fullscreen mode Exit fullscreen mode

How to undo a public commit?

You can just run

$ git revert HEAD
Enter fullscreen mode Exit fullscreen mode

How to delete a Git branch locally and remotely?

  • Deleting local branch
$ git branch -d <branchname>
Enter fullscreen mode Exit fullscreen mode
  • Deleting remote branch
$ git push origin --delete <branch>
Enter fullscreen mode Exit fullscreen mode

How to revert to a particular commit?

To revert to a particular commit you'll need a commit id. To get a commit id just run

$ git log
Enter fullscreen mode Exit fullscreen mode

Then copy the commit id you want to rever back to. And then run:

$ git revert <commit-id>
Enter fullscreen mode Exit fullscreen mode

How Undo a git stash?

You can just run:

$ git stash pop
Enter fullscreen mode Exit fullscreen mode

and it will unstash your changes.

In case you want to preserve the state of files (staged vs. working), use

$ git stash apply --index
Enter fullscreen mode Exit fullscreen mode

How to undo 'git add' before commit?

You can undo git add before commit with

$ git reset <file>
Enter fullscreen mode Exit fullscreen mode

To unstage all due changes

$ git reset
Enter fullscreen mode Exit fullscreen mode

How to rename a local Git branch?

$ git branch -m <oldname> <newname>
Enter fullscreen mode Exit fullscreen mode
  • To rename current branch
$ git branch -m <newname>
Enter fullscreen mode Exit fullscreen mode

How to discard unstaged changes in Git?

  • For all unstaged files
$ git checkout -- .
Enter fullscreen mode Exit fullscreen mode
  • For a specific file
git checkout -- path/to/file/to/revert
Enter fullscreen mode Exit fullscreen mode

Note: -- here to remove argument ambiguation.

How to delete all tags from a Git repository?

To delete remote tags simply do:

$ git tag -l | xargs -n 1 git push --delete origin
Enter fullscreen mode Exit fullscreen mode

and then delete the local copies of tag:

$ git tag | xargs git tag -d
Enter fullscreen mode Exit fullscreen mode

Conclusion

I hope this post saved your time and life. If you liked the post, feel free to share it to help others find it!

You may also want to read Getting Started with Git - A beginner's guide

You may also follow me on LinkedIn and Twitter.

💌 If you’d like to receive more tutorials in your inbox, you can sign up for the newsletter here.

Discussion (4)

Collapse
drsimplegraffiti profile image
Abayomi Ogunnusi

I just saved this....thanks

Collapse
pratap2210 profile image
Pratap Sharma Author

I'm glad. Thanks

Collapse
crabsgamer profile image
Crabs

Thank you I really need this

Collapse
pratap2210 profile image
Pratap Sharma Author

I'm glad. Thank you