I have built and maintain many themes for various clients. I'd like to be able to put them all in github for lovely version control. However github gets a bit expensive when you have over 20 private repositories. I'm going to have about 30+. The themes are not used together, each one is for a separate client.
I know I can host my own git install, but then I lose the great diff tools and social aspects of github. It's also nice to have all your code in one place.
So I'm wondering if there is another way to put all themes in one repo and separate them in some intelligent way.
I thought about using gitignore, but then for each clone, you need to reconstruct the correct .gitignore. not workable.
Maybe using branches is the right approach, but I'm unfamiliar with how that would work.
One other aspect, I've been using deployhq.com (a great service) to deploy the changed files via ftp to the servers. And it's working great. And for site still in development I create a git service hook and after each push, the project gets deployed automatically by deployhq - awesome.
Any advice about how to accomplish this via branches, or via any other method?