I have my source code and .git folder on a small fast ssd, I would like to have the .git directory on my second bigger slower hdd and keep my working code on my fast smaller
Actually, you can just run
$ git init --separate-git-dir=[path to directory for .git data]
git init is safe to be used inside an already cloned repository
Running git init in an existing repository is safe. It will not overwrite things that are already there. The primary reason for rerunning git init is to pick up newly added templates (or to move the repository to another place if --separate-git-dir is given).
Reference to Git manual page