Get the Git Commit ID via Command Line

By  on  

I know just enough git to be dangerous.  I'm not doing advanced bisecting but I can stash, rebase, and reset with the best of them.  One new trick I learned from my boss, Luke Crouch, saves me loads of time:  getting the commit ID via command line.  For years I would merge a PR, go the project's main page, and copy the commit ID so that I could push code to staging and production.  Always seemed like an extra step rather than just making it happen from the terminal.  Here's the magical command:

git rev-parse HEAD

Of course you need to update your local repo to remote master, but you do that anyway, right?  Hopefully this will become a timesaver the same way it has for me!

Recent Features

  • By
    Regular Expressions for the Rest of Us

    Sooner or later you'll run across a regular expression. With their cryptic syntax, confusing documentation and massive learning curve, most developers settle for copying and pasting them from StackOverflow and hoping they work. But what if you could decode regular expressions and harness their power? In...

  • By
    39 Shirts – Leaving Mozilla

    In 2001 I had just graduated from a small town high school and headed off to a small town college. I found myself in the quaint computer lab where the substandard computers featured two browsers: Internet Explorer and Mozilla. It was this lab where I fell...

Incredible Demos

Discussion

  1. On Mac, you should try this, it will copy the commit ID to your clipboard:

    git rev-parse HEAD | pbcopy
  2. Also you can use short version of git hash:

    git rev-parse --short HEAD
    
  3. Daniel Mejia

    I miss working a Mac, but Windows is working out just great too.

    git rev-parse HEAD | clip
  4. Christian Knappke

    To shorten things further, you can use @ as an abbreviation of HEAD.

  5. Adam Stankiewicz

    Here’s npm package if you need it in JS: https://github.com/sheerun/git-commit-id

Wrap your code in <pre class="{language}"></pre> tags, link to a GitHub gist, JSFiddle fiddle, or CodePen pen to embed!