Is Google code similar to Github where you can put your source code for collaboration?
Which is the de-facto SCM it's using?
And which one is recommended for project hosting?
Is Google code similar to Github where you can put your source code for collaboration?
Which is the de-facto SCM it's using?
And which one is recommended for project hosting?
Yes, they are similar but support different versioning systems. Also the collaboration style is different. While Github (and Launchpad and BitBucket and all the other DVCS hosters) focus more on active collaboration between forked projects, Google Code's primary way of collaboration is through tickets.
So none of them is per-se better than the other, but perhaps fits your project management and contribution/collaboration style better. The whole debate between centralized and decentralized code versioning systems is related to that.
AFAIK Google code is yet to support git natively. At least as far as I can tell by the comments on the ticket open for this.
So if you are using or would like to use Git then Github will be naturally more suitable.
On the other hand if you are using SVN and would like to continue to then Google code might be a more natural fit.
I have found Github projects easier to set up and get going but that is fairly subjective. Some of my friends also claim that Github's support/ecosystem is better than Google's.
One big difference is the support by GitHub for smart http, as explained in the ProGit "smart http" section, supported since April 2010.
Being behind a firewall at work, that is more than useful to actually push anything to the remote repo!
I don't think "Google Code" support it officially, even though some contributors try to push that feature.