My favorites | Sign in
Project Home Wiki Issues Source
Search
for
GettingStarted  
A quick guide to getting started with project hosting on Google Code.
Featured, Restrict-AddWikiComment-Commit
Updated May 16, 2012 by [email protected]

Getting Started

Project Hosting on Google Code provides a free collaborative development environment for open source projects. Each project comes with its own member controls, Subversion/Mercurial/Git repository, issue tracker, wiki pages, and downloads section. Our project hosting service is simple, fast, reliable, and scalable, so that you can focus on your own open source development.

This guide provides information on:

Contributing Open Source Code

Before you create a new project, please search for existing projects on this site and elsewhere on the web. It is better to help out with an existing project than to start one from scratch.

Working with your Project

Customizing your Project

You can use the functionality under the Administer tab to customize your project. This tab is visible only to project owners. The following subtabs are useful when creating new projects:

  • Project Summary subtab -- You can modify some of the options that you set during project creation, as well as set up blogs, analytics, and a custom project logo. This also provides another opportunity to set up project labels, which will help others find your project.
  • Project Members subtab -- You can add new owners or committers to the project.
  • Source subtab -- You can elect to have non-project members review your code.

You'll also likely want to set up mailing lists for notifications of commits and issue changes. The emails allow project members and others to keep track of changes to the source code that might affect them. To set up mailing lists, perform the following:

  1. If you need to create mailing lists, you may want to use Google Groups.
  2. Add (your-project-name)@googlecode.com as an allowed poster to all mailing lists that will receive notifications.
  3. In your project, click the Administer tab.
  4. Click the Source subtab.
  5. In the Activity Notifications area, enter mailing lists that will receive notifications of All commits and click Save Changes.
  6. Click the Issue Tracking subtab.
  7. In the Activity Notifications area, enter mailing lists that will receive notifications of All issue changes and click Save Changes.

Working with your Source Repository

Each project has its own Subversion or Mercurial or Git repository.

Perform the following to check code in and out of your source repository:

  1. For instructions on how to check out a project's repository from the command line, go to the Source tab. Any user, regardless of whether they have a Google account, can check out and browse the repository anonymously, while project owners and committers are granted full read and write permissions. You can add project owners and committers at the Administer tab.
  2. If you plan on synching from an existing repository, you must click the Reset This Repository link at the bottom of the Source tab page before making any other changes to your project's repository.

After you've been working with your project for a while, the following subtabs on the Source tab will come in handy:

  • Browse subtab -- Allows you to browse the files and directories in your project as they existed at a point in time.
  • Changes subtab -- Lists changes made to the repository. You can also use this subtab to start a code review of any change.

Documenting your Project

You can use the functionality under the Wiki tab to create wiki pages for your project. Our wiki syntax is inspired by the MoinMoin wiki syntax, and is more or less a subset of it. We've found that MoinMoin is one of the most popular open source wikis and provides a clean syntax for users.

Perform the following to create a wiki page:

  1. In your project, click the Wiki tab.
  2. Click the New page subtab.
  3. Type the Page Name. This value must be alphanumeric with no spaces. You won't be able to change this name later, so be careful.
  4. Enter the text and syntax for the page in the Content field. Learn more about the wiki syntax.
  5. Click a link in one of the Labels fields to see the available list of labels. Labels help the user determine how relevant the wiki page is to them.
  6. Click Preview, Save page, or Discard.

Tracking Project Tasks

The Issues tab is a great way to keep track of the ongoing features, tasks, and bugs in your project. It allows multiple project members to see what others are currently doing.

After you click the New issue subtab to create a new issue, please note the Labels fields. Labels are strings that are meaningful to the project members. When an issue label contains a dash, such as Priority-Medium, it is interpreted as a key-value pair that you can use like a custom field.

  • The prefix before the first dash is the key.
  • The part after the first dash is the value.

You can configure the issue list to show a column for any prefix. You can also search for the values within a specific custom field by using prefix:value.

Sharing Releases

When you're ready to release your code, you can use the Downloads tab to upload compressed files. Others can then go to this tab on your project to download the code for their own use.

Be sure to choose the file names carefully before you upload them. The file name will become part of your URL, and you cannot change it later. Include a release number in the name of any file that may change in a later release.

While we recommend that you mark old releases as deprecated, you can delete files from the Downloads tab: click on the row for the file name (not the file link) to get to the download details page, then click the 'Delete' link.

Finding Further Help

For general questions, check the FAQ wiki page. If you have a question that still isn't answered, bring it up on the Google Group.

The content on this page created by Google is licensed under the Creative Commons Attribution 3.0 License. User-generated content is not included in this license.

Comment by [email protected], Sep 13, 2008

I second (third?) that motion. I can't seem to authenticate for checkin, so my project is empty

Comment by [email protected], Sep 14, 2008

ashbygreg: Good point. For svn documentation, see http://svnbook.red-bean.com/. You would want to use 'svn add' and then 'svn commit' if you have new code. Or, use the 'svnsync' utility if you have an existing svn repository.

Comment by [email protected], Nov 11, 2008

I fourth the motion to explain checking in. A newbie-proof explanation would be nice, like "from your command-line application, type 'blah_blah_blah...'" I know, I know, read the svnbook! But it looks like it assumes root access to the repository.

Comment by [email protected], Nov 13, 2008

I am so lost, on how this works.... I am new to HTML and web programming, I already finished a complex app. in open social. I started learning to program less then a month... I am trying to understand how to post code and call the code from and outside, website.

Comment by [email protected], Nov 19, 2008
this initial checkin worked for me (svn under Cygwin installed):

$ cd ..   # out of your pre-svn project directory, YOURLOCALDIR/
$ svn import YOURLOCALDIR https://YOURPROJECTNAME.googlecode.com/svn/trunk -m 'initial import'
$ rm -rf yourlocaldirhere/  # you don't need it, you will checkout from google
$ svn checkout https://YOURPROJECTNAME.googlecode.com/svn/trunk/ YOURPROJECTNAME --username yourusername
Comment by [email protected], Nov 20, 2008

Using instructions provided by bheckel worked for me. Recommend adding a folder name to the import so that files in your project don't appear at the trunk/ level. Like so: $ svn import YOURLOCALDIR https://YOURPROJECTNAME.googlecode.com/svn/trunk/YOURLOCALDIR -m 'initial import'

If using NetBeans? 6.x (upgrade to 6.5- it downloads a useable svn client automagically) don't try to import using the plug-in, just use the command line as above. But DO use the plug-in to checkout the files- you can even checkout over an existing project and it will magically now be under version control!

Comment by [email protected], Nov 21, 2008

@fishribs: good point about trunk, thanks

Comment by [email protected], Jan 10, 2009

Is it possible to rename the project or the only way is to delete it and create a new one?

Comment by [email protected], Jan 10, 2009

Here's how to import your project using TortoiseSVN, the most popular Windows SVN client.

I assume you have created your Google Code (GC) project and it is called PROJECT and that the local source you want import is in a directory tree rooted at SOURCE.

a) Go to your GC home page and select the "Profile" menu - this will give you your UID and then click the "Settings" tab to find your PASSWORD - this is not the same as your gmail password.

b) In Windows explorer, right click n your SOURCE directory to get the Tortoise context menu and choose "Import..." This will pop up a dialog asking for the repository url. Enter the following:

https://PROJECT.googlecode.com/svn/trunk

c) You will be prompted for a userid & password - enter UID and PASSWORD described above.

Your project should now be uploaded to the GC repository. From now on you can use the Tortoise repo-browser and other tools to access it via the url above.

Comment by [email protected], Feb 8, 2009

Add my vote to the need for some easy-to-find getting started guide. Although previously a "heavy user" I haven't used Unix/Linux much for nearly a decade. Until today, all I could find was the FAQ that said something to the effect that to get you code into the hosted project "just use" svn import. Hmmm... svn, that rings a bell. But after a weekend of going through the svn book I'm still pretty clueless on how to get my code off my PC and into Google code hosting. Do I FTP it? Do I do something like the doc says for Google Base? Do I really need a full Subversion server install on my PC? Or just a client like Turtle... Once its set up, how do I "rlogin" to my /svn to adminster Subverson?

So its been 6 months and us noobs are still in need of some orienting help, easily findable from the Source tabbed page. With the info previously from bheckel, fishribs, and nbutterworth1953 I might be able to figure it out with another few hours of wasted time. (Yes, I realize these are things I probably should know, but I'm assuming the purpose of Google code hosting is to put shared projects within reach without needing a seasoned administrator on your team...).

Any due apologies for the length of this comment and its bordering a rant. Google code looks so cool and seems so close and easy, except for a newbie starting up a svn code base.

Comment by [email protected], Mar 4, 2009

After much confusion, I solved the authentication problem when you first create a project: you need to use your "googlecode.com" password, not your regular google account password. you can find that here: http://code.google.com/hosting/settings

Comment by [email protected], Apr 18, 2009

Is there any system to get statistics on your project besides the download. Maybe like page views. Also, statistics compared with other projects?

Comment by [email protected], Apr 20, 2009

What I'd like is a way to: + Diff a wiki page to know what has changed. Even as a project owner I have no clue when a user changes a page. + Get notification when someone posts a comment on a wiki page.

Comment by [email protected], Apr 20, 2009

Yes, normal wiki pages with history and undo are very welcome :)

Comment by arlicle, Apr 21, 2009

Can unlogin user post the issues ?

Comment by [email protected], Apr 29, 2009

I got it working using this: http://internetducttape.com/2007/03/03/howto_google_code_hosting_subversion_tortoisesvn/

You also need to write how to remove projects. I created a test project to see how to work this thing before I go into the real deal. Now I can't remove it because I can't find any "delete" or "remove" buttons. I also noticed another person in the help section has a problem with the same thing.

Comment by [email protected], Apr 29, 2009

Found the deletion thing. Administer -> Advanced -> Delete Project.

Comment by [email protected], May 2, 2009

Can post info about create a project with Hg.

Comment by [email protected], May 23, 2009

俺看不懂洋文。。。。

Comment by [email protected], May 26, 2009

有了网的源代码

Comment by [email protected], May 26, 2009

quessy and ovnicr...: Mercurial is not available yet. We are only offering it to a few people for testing. Check back for an announcement when it is available to everyone.

Comment by [email protected], May 26, 2009

arlicle: No. Users must sign in to enter issues or leave comments. We must have that rule to help reduce spam comments.

Comment by [email protected], May 26, 2009

buserror: You can set up an email address that will be notified whenever a wiki comment is left: is it under Administer -> Wiki.

Wiki pages are stored in subversion, so ever wiki change can also trigger a commit email: that is specified under Administer -> Source. And, you can view changes and diffs under the Source tab.

Comment by [email protected], Jun 6, 2009

能不能弄个中文的啊,虽然通过各种方法能基本了解,太累啊

Comment by [email protected], Jun 12, 2009

So many guys here need a guide in Chinese. Anybody here wants to translate it ?

Comment by [email protected], Jun 13, 2009

@harry.hit: You seem to speak chinese and english, so you should translate it.

Comment by [email protected], Jun 17, 2009

天啊。只会中文怎么混啊。好东西全是英文的。英文太重要了。

Comment by [email protected], Jun 27, 2009

Do you allow Mercurial users to set up more than one repo? Many projects which use Mercurial store branches in different repositories rather than branching in one repo as in SVN. Bitbucket does this and the Git hosting sites like GitHub?, Gitorious etc allow it as well.

Comment by [email protected], Jul 4, 2009

using svn under cygwin to upload any file to your depot.

- install cygwin subversion

(see cygwin install from, only need the install cygwin portion) \ http://ist.berkeley.edu/as-ag/tools/howto/cygwin.html)

start a shell > export SVN_SSH=ssh$

to add a file to your depot

> svn import $some_file https://$your_project.googlecode.com/svn/$some_file \ -m $some_message --username $your_user_name --password $your_password

delete a file from the depot $ svn delete https://$your-project.googlecode.com/svn/$some_file \ --username $your_user_name \ --password $your_password \ -m some_message

Comment by [email protected], Jul 9, 2009

why svn has to install in pc! why not google make a on_web svn?

Comment by segin2005, Jul 11, 2009

WuZhenda?, Subversion (svn) is version control software. It needs to be able to access files anywhere on your PC, create, modify, and delete any file, check the last modified time of files, etc. and a web-based client for two-way Subversion would not work.

Even if it let you edit the repository directly (no local storage), there is the inherent problems that the editor would probably suck.

Comment by [email protected], Jul 15, 2009

To checkout the svn trunk from the google-appengine folder on command line (in Linux), if you get a folder in a folder, (like you get from bheckles method above) replace the folder name with a .

svn checkout https://myappName.googlecode.com/svn/trunk/ . --username myemailName

now it makes a new folder

Comment by [email protected], Jul 29, 2009

很好用~

Comment by [email protected], Jul 29, 2009

就是没有中文的,不爽嘛。

Comment by [email protected], Aug 4, 2009

Can you add "public domain" or "no license" as a category in the source code license? Is there a specific reason this is not available?

Comment by [email protected], Aug 13, 2009

英文!

Comment by [email protected], Aug 18, 2009

Sure would be nice if there was an automated way to produce a compressed download file with version number from the svn source tree.

It would also be nice if one could have a versionless download link to particular files that simply reflected the current version of that file in the svn

Comment by [email protected], Aug 22, 2009

have not a screen-shot tab???

Comment by [email protected], Aug 22, 2009

The red-bean.com links do not seem to work any longer.

Comment by [email protected], Aug 29, 2009

很强大!!

Comment by peterwillcn, Aug 30, 2009

删除项目 。。重建和改名如何操作

Comment by [email protected], Sep 2, 2009

is it possible to delete a project?

Comment by [email protected], Sep 29, 2009

CN 来报道~


Sign in to add a comment
Powered by Google Project Hosting