How to retrieve the hash for the current commit in Git?
Solution 1:
To turn arbitrary extended object reference into SHA-1, use simply git-rev-parse, for example
git rev-parse HEAD
or
git rev-parse --verify HEAD
You can also retrieve the short version like this
git rev-parse --short HEAD
Sidenote: If you want to turn references (branches and tags) into SHA-1, there is git show-ref
and git for-each-ref
.
Solution 2:
If you only want the shortened commit hash:
git log --pretty=format:'%h' -n 1
Furthermore, using %H
is another way to get the long commit hash, and simply -1
can be used in place of -n 1
.
Solution 3:
Another one, using git log:
git log -1 --format="%H"
It's very similar to the of @outofculture though a bit shorter.
Solution 4:
To get the full SHA:
$ git rev-parse HEAD
cbf1b9a1be984a9f61b79a05f23b19f66d533537
To get the shortened version:
$ git rev-parse --short HEAD
cbf1b9a