I have searched several times how to produce graph tree in terminal similar to Gitk or other GUI visualizers. Compiling the knowledge in this StackOverflow question together, I came up with the following command:
git log --graph --full-history --all --color --date=short --pretty=format:"%x1b[31m%h%x09%x1b[0m%x20%ad%x1b[32m%d%x1b[0m %s %x1b[30m(%an)%x1b[0m"
UPDATE: I added annotation to the end of line in dark-grey (not shown in the image) so that you can blame people quicker.
This produces graph shown on the image.
If you noticed, I have aliased all of this for a much shorter command git tree, which can be done with the following git config line:
git config --global alias.tree 'log --graph --full-history --all --color --date=short --pretty=format:"%x1b[31m%h%x09%x1b[0m%x20%ad%x1b[32m%d%x1b[0m %s %x1b[30m(%an)%x1b[0m"'
Notice the two sets of quatation marks.
