GIT get the commit hash prior to a specific commit

transilvlad picture transilvlad · Sep 4, 2014 · Viewed 19.8k times · Source

git 1.7.1

git show <hash>:<file> gives me the file based on the commit hash provided

I am trying to figure out how to bet the file of the previous commit before the one who's hash I have.

I know I can always use the log to get all hashes and figure out the one i need but that's not a good solution in my case as I am trying to minimise the number of commands I need to do for performance issues.

Was wondering if there is a simple way.

Answer

Nikhil Gupta picture Nikhil Gupta · Sep 4, 2014

Use git show HEAD^1. You can replace HEAD with your commit-hash

Edit to take multiple parents into account:

In case you want to see all the parents for a commit hash, you can use git rev-list --parents -n 1 <commithash> or use git show as @Bhaskar suggested in the comments to the question.

There are other ways as well as explained here.