Display git commit statistics in bash
Some suggestions:


shellcheck should give you a few suggestions. I won't mention things I expect it to find.
Uppercase names are by convention only used for exported variables.
SUBDIRECTORY_OK is unused. If it's a magic variable this probably should be mentioned.
SIZER is only used once, so it should be inlined.
wc -w 8.30 from GNU coreutils, at least, does not output any spaces, so tr -d ' ' might be unnecessary.
(($# &gt; 0)) would usually be written [[ "$#" -gt 0 ]].
Throwing away standard error means the script will be harder to debug. If there's specific output there you want to hide you can use cmd 2&gt; &gt;(grep -v … &gt;&amp;2)
commit_len is slow because for each commit you run a git command &amp; more to count the number of commits before it. Which means you traverse the Git history N times. I think you'll get the same result by running size "$1".
You can use shift to simplify things like "${@:2}" to just "$@".
dc is not a tool I'm familiar with, but it will certainly be faster to count using something like awk to gobble the whole stream in one command. while read is actually surprisingly slow.