Discussion of git log
, with emphasis on reachability.
git log
displays repository history based on reachability:
o---o---o---o---o master \ \ o---o---o---o---o next \ o---o---o topic
Identify the specific starting point(s):
$ git log master $ git log topic master
Identify revisions not of interest:
$ git log next --not master $ git log next ^master $ git log next topic ^master $ git log b1 b2 b3 ... ^b8 ^b9 v1.0 v2.0 ...
Given this history:
o---o---o---o---o master \ \ o---o---o---o---o next \ o---o---o topic
there is a special notation for the most common exclusion (remember this one for rebasing):
$ git log next ^master $ git log master..next $ git log next..topic
If you want to see the log of all changes to a single file:
$ git log --oneline -- scripts/dtc/Makefile
it will take a while as Git does not store per-file changes with the file.
Show only commits that deleted files:
$ git log --diff-filter=D --summary