In the past, one had to invoke git gc
from time to time. I've read now, that latest Git versions should perform the cleanup automatically. Is this correct?
To an extent...
From the documentation at http://www.kernel.org/pub/software/scm/git/docs/git-gc.html
Pertaining to git gc --auto....
With this option, git gc checks whether any housekeeping is required; if not, it exits without performing any work. Some git commands run git gc --auto after performing operations that could create many loose objects.
So it depends on the commands you are running.