List all commits (across all branches) for a given file

This question is closely related to List all commits for a specific file however it is different. I want to find out which commits, across all branches, had modified a given file.

To make it more complex, the given file may or may not be in the working tree.


Solution 1:

Try this:

git log --all -- path

Solution 2:

You can use gitk

gitk --all <path to file> (you need to install gitk)

e.g.

gitk --all -- /home/kit.ho/project/abc.txt

Solution 3:

Command line

I would highly recommend to add the graph option with git log:

git log --graph --all -- <filename>

git log --graph --all -- <filename>

Gui

Gitk is an pretty old tool and not always installed, I recommend a different free tool like e.g. SourceTree:

SourceTree