It really depends on what you are looking for. If you need some functionality which is currently under development, or if you want to help the kernel development effort by testing work-in-process code, then using the git code is definitely the way to go.
For everyday use, released kernels are probably the way to go.
I guess the very best would be to normally use released kernels but test each new kernel on your system at an appropriate point, maybe mid-way through the development cycle, so that if you do find a regression on your system you can report it sufficiently early that it has a good chance of being fixed in time for the release.