A good project starts with a good idea: one that addresses a real need, is feasible and well-scoped, and isn't well covered by existing open source projects. (Before you create a new project, we suggest that you try searching for existing projects on this site and elsewhere on the web. You can often get further faster by helping out with an existing project than by starting one from scratch.)
If you're ready to start your own project, you'll need to write a description of it and give it a good name. Then, sign in using a Gmail account, enter that information into the Create a project page, and you're done. Congrats. You've got a brand-new project on Google Code.
One of the project owners must use the project administration page to add your Gmail username to the project.
Most projects have mailing lists that the developers use to discuss the project. To become a developer, first participate on the mailing list by showing your interest in the project and your ability to help the project. Then, ask the project owners to make you a member of the project.
We want our collaborative development environment to be simple, fast, reliable, and scalable, so we only offer tools that are aligned with those goals. This way, we can manage and support the tools we offer in a scalable manner.
If you need more tools, you might choose to run them yourself on your own servers, or you might make use of individual tools that are offered by other project-hosting sites. You can loosely integrate with other tools and websites by linking to them from your project-summary page.
A file is only eligible for deletion if it is less than 2 days old and has been downloaded less than 50 times.
If a file is eligible for deletion, it can be deleted using the "Delete" link in the navigation bar of the file details page. The file details page can be reached via the link in the "Summary + Labels" column on the project "Downloads" page.
We currently use Subversion 1.4.0, made available via WebDAV.
Anonymous checkouts can be done via http://, while developers must use authenticated https:// to commit changes.
To upload the history of an existing Subversion repository, use the svnsync tool that ships with Subversion 1.4. Run svnsync help to read more about this tool.
Note that your Google Code repository must be reset to revision 0 for this to work. If your project is newly created, it will be at revision 1, and your project's Source tab will display instructions on how to reset the repository yourself.(Note: you must be a project owner to reset your own repository, and also to push code up with svnsync.)
If your repository's latest revision is greater than 1, then a site administrator will have to reset the repository for you; email google-code-hosting@googlegroups.com and ask for this.
Here's a sample transcript that demonstrates how you can push history from an existing repository (located at file:///my/repos) to your repository on Google Code:
$ svnsync init --username YOURUSERNAME https://YOURPROJECT.googlecode.com/svn file:///path/to/localrepos
Copied properties for revision 0.
$ svnsync sync --username YOURUSERNAME https://YOURPROJECT.googlecode.com/svn
Committed revision 1.
Copied properties for revision 1.
Committed revision 2.
Copied properties for revision 2.
...
When prompted for your password, use your googlecode.com password, which can be found on your settings page.
Running svnsync on a large repository will take a significant amount of time. If you are disconnected during the process, you may see the error message "svnsync: Couldn't get lock on destination repos after 10 attempts". If this happens, you can remove the lock yourself, see the "Locks" section of svnsync.txt.
$ svnadmin create localrepos
$ emacs localrepos/hooks/pre-revprop-change # make it 'exit 0'
$ chmod +x localrepos/hooks/pre-revprop-change
$ svnsync init file:///path/to/localrepos https://myproject.googlecode.com/svn
Copied properties for revision 0.
$ svnsync sync file:///path/to/localrepos
Committed revision 1.
Copied properties for revision 1.
Committed revision 2.
Copied properties for revision 2.
...
After you've done this once, you can continue to run the last 'svnsync sync' command to periodically pull down the latest commits and keep your local mirror up-to-date.Error validating server certificate for 'https://projectname.googlecode.com:443': - The certificate is not issued by a trusted authority. Use the fingerprint to validate the certificate manually!...you should check that the "fingerprint" or "SHA1 fingerprint" given for the certificate is:
B1:3A:D5:38:56:27:52:9F:BA:6C:70:1E:A9:AB:4A:1A:8B:DA:FF:EC. If it is not, please email us at code-hosting@google.com.An issue tracker is an application that users and developers use to maintain a database of software defects, change requests, technical-support requests, development tasks, and other issues that the project members must work to resolve. Since they're so central to each developer's daily work, many issue tracking systems have already been built. Most existing issue tracker tools force developers to follow a particular software development process by defining a set of fields, possible values, and workflow states for each issue. The result is often a complex tool that's difficult to use because it includes many fields and options that aren't applicable to a given issue.
In contrast, our issue tracker uses only a minimal set of fields, and offers users the ability to store the information that they need as labels. This approach is possible because it uses Google's free-text search technology to search on all issue metadata.
Immediately under the "Issues" tab, there is a search box that can be used for searching. Each search takes place in a search context that is selected by a drop-down menu. By default, all searches only consider open issues; if you would like to search closed issues, select "All issues" from the search context drop-down menu.
You can quickly narrow your search by clicking on the issue list table headers and selecting a value from the "Show only" sub-menu.
Another way to search is to use the "Advanced Search" link under the "Issues" tab. This page helps you form a complex query. However, once you learn the query syntax, you can enter complex queries directly into the main search field. For more information on issue queries, click "Search Tips" under the "Issues" tab.
Labels are simply strings that are meaningful to the project members, but that have no particular meaning to the issue tracker itself. For example, you could label an issue as "Hot" if you like.
When an issue label has a dash in it, e.g., "Priority-Medium", then that is interpreted as a key-value pair that can be used like a custom field. The prefix before the first dash is the key, and the part after it is the value. You can configure the issue list to show a column for any prefix. And, you can search for values within a specific custom field by using "prefix:value".
Project owners can configure the set of labels that are offered to members of a project. To edit the predefined labels, click the "Administer" tab and the "Issue tracker" sub-tab. Use the text fields to configure the set of issue statuses and labels that will be offered.
For example, if your project is building a graphics driver, maybe you would like to label some of your issues with Depth-16bit, Depth-24bit, and/or Depth-32bit.
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.
Specific examples of how to use the wiki syntax are shown in the "Wiki Markup Help" box on the right-hand side of the wiki page creation and editing pages.
Click on the Wiki tab of your project to see a list of all wiki pages. To add a new page, you must be a project owner or member; click on the "New Page" link in the toolbar under the main tabs. This will bring you to the wiki editor where you can add content and assign labels to your wiki page. To edit an existing page, first view the page, then click "Edit this page" in the toolbar. You can also add and edit pages directly through Subversion, since all wiki pages are stored in the /wiki/ directory in your project's Subversion repository.
Most developers only check out the /trunk/ directory. To have /wiki/ in your working copy, you might use a command of the form:
svn checkout https://PROJECTNAME.googlecode.com/svn/wiki/ PROJECTNAME-wiki --username USERNAMEPrivacy and security are extremely important to us.
Google Code uses your Google or Gmail account for authentication. For Subversion authentication, a secondary generated password is used. Logs of your activities are not released to any third parties.
For more info, please check out our Terms of Service.