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
    7 Essential JavaScript Functions

    I remember the early days of JavaScript where you needed a simple function for just about everything because the browser vendors implemented features differently, and not just edge features, basic features, like addEventListener and attachEvent.  Times have changed but there are still a few functions each developer should...

  • By
    9 Mind-Blowing WebGL Demos

    As much as developers now loathe Flash, we're still playing a bit of catch up to natively duplicate the animation capabilities that Adobe's old technology provided us.  Of course we have canvas, an awesome technology, one which I highlighted 9 mind-blowing demos.  Another technology available...

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!