Google Code provides a free collaborative development environment for open source projects. It has everything thats required for project hosting; SVN/Mercurial repository for code hosting, Wiki for documentation, an Issue Tracker for Bug reports and a Downloads area so that you don’t need to host the packages on your personal website. There are alternatives to Google Code like SourceForge, Savannah etc, but Google Code according to me is the most responsive and simplistic. I have created/adopted a couple wordpress themes which I have been wanting to upload to Google Code for a long time, but haven’t gotten down to doing it partly due to laziness and partly due to lack of time.
Now that I am on a sabbatical and have ample time on my hands, I decided to upload my themes to Google Code. What I found is that their project creation process isn’t the most intuitive. The link to the project creation form is buried inside their wiki and there’s no direct way of accessing it. I submitted the project creation form and it redirected me to the Project Administration page. Next step is to upload the code to the repository through SVN so that I could start hacking at it. However, again, I couldn’t find any instructions of how to use SVN to upload to the repository. I have been a Perforce user the past few years, and didn’t remember any of the SVN commands that I used a few years back. Thankfully, svn has good documentation, and I soon figured out how to check in my code. This is how you go about it:
svn import -m "Initial Import" https://$PROJECTNAME.googlecode.com/svn/trunk/ --username $USERNAME
Replace $ROOT_DIRECTORY_OF_PROJECT, $PROJECTNAME, $USERNAME with appropriate values. BTW PROJECTNAME is the name you chose in the Project Creation Form.
Now it will ask for your Gnome Keyring Password if you are on Ubuntu (I’m not sure what would happen on other Distributions or Windoze). Next it will ask for the password corresponding to $USERNAME. This is NOT your gmail password. The password can be found on your google code settings page. Once you enter your password, you’ll see the files getting checked in to the SVN repository one by one! Voila!