You should check that iTerm is setting the TERM variable correctly. On my system, I see:
echo $TERM
xterm-256color
And have working colours in git. This is set according to the ‘Report Terminal Type’ property in iTerm’s preferences.
You should also check the Colors tab, and ensure the contrast slider isn’t all the way to the right.