git log -4 --author="Grzegorz Byrka"
git log --graph --oneline --decorate
git log --no-merges
git log --merges
git log --reverse
git shortlog -sen --no-merges
git shortlog -sn --no-merges
git shortlog -sn --no-merges --after="2019-1-1"
git shortlog -sn --no-merges --before="2019-1-1" --after="2018-1-1"
git log --pretty=format:"%ad%" --author="Grzegorz Byrka" --reverse | head -n 3
git log --pretty=format:"%ad%" --author="Grzegorz Byrka" | head -n 3
git log --name-only --pretty=format: | sort | uniq -c | sort -nr | head -n 20
git log --before="2019-1-1" --after="2018-1-1" --name-only --pretty=format: | sort | uniq -c | sort -nr | head -n 20
git log --author="Grzegorz Byrka" --name-only --pretty=format: | sort | uniq -c | sort -nr | head -n 20
phploc
or http://cloc.sourceforge.net/
git checkout 'master@{2019-01-01 00:00:01}'
This method uses the reflog to find the commit in your history. By default these entries expire after 90 days. Although the syntax for using the reflog is less verbose you can only go back 90 days.
git checkout `git rev-list -n 1 --first-parent --before="2019-01-01 00:01" master`
Some of the above is automated here: https://github.com/gbyrka/git-static-analyzer