gittimelinegit-diffgit-logrevision-history

How can I view file history in Git?


With Subversion I could use TortoiseSVN to view the history/log of a file.

How can I do this with Git?

I am just looking for the history record for a particular file, and then the ability to compare the different versions.


Solution

  • Use git log to view the commit history. Each commit has an associated revision specifier that is a hash key (e.g. 14b8d0982044b0c49f7a855e396206ee65c0e787 and b410ad4619d296f9d37f0db3d0ff5b9066838b39). To view the difference between two different commits, use git diff with the first few characters of the revision specifiers of both commits, like so:

    # diff between commits 14b8... and b410...
    git diff 14b8..b410
    # only include diff of specified files
    git diff 14b8..b410 path/to/file/a path/to/file/b
    

    If you want to get an overview over all the differences that happened from commit to commit, use git log or git whatchanged with the patch option:

    # include patch displays in the commit history
    git log -p
    git whatchanged -p
    # only get history of those commits that touch specified paths
    git log path/a path/b
    git whatchanged path/c path/d