Setting Up a New SVN Project on Google Code

Submitted by Ed_B on Sat, 06/12/2010 - 20:14

Printer-friendly versionPrinter-friendly version

I've been working on a  timer/scheduler library for fairly accurate, low speed timing of function calls on the Arduino. To share the code, I got the idea to set up a Google Code repository for the project . This is new stuff for me, and was hard to figure out. I started with the unadorned project folder from my laptop. Google code projects can  use either the Mercurial or Subversion (SVN) version control systems. I chose SVN because I'd heard of it. I  did my setup from the command line in Ubuntu. Here's what I think finally worked.

Make the empty Google code project and write the introduction and summary.
A gmail address works well for this. The address
will yield the username "foo". (I am kineticsandelectronics )

Log in to the project home page:

click <SOURCE> tab on home page -- link goes to:

There are two passwords for a project.

  • Your login password
  • Your SVN password

You make your login password. Google makes your SVN password.

To get the SVN password, click link in the line in middle of page:
"When prompted, enter your generated password."

You will be redirected to:
The password will be near the top of the page.

My Ubuntu home directory is foobar.
I put my timer-scheduler/ project folder into a new
empty folder called svn/

Here we go...

foobar@fizzbin:~$ cd /home/foobar/svn/

foobar@fizzbin:~/svn$ ls -l
drwxr-xr-x 4 foobar foobar 4096 2010-06-12 15:32 timer-scheduler

foobar@fizzbin:~/svn$ svn import timer-scheduler --username kineticsandelectronics -m 'initial import'
Authentication realm: <> Google Code Subversion Repository
Password for 'kineticsandelectronics': [Does Not Echo]
Adding         timer-scheduler/TimerScheduler.cpp
Adding         timer-scheduler/utility
Adding         timer-scheduler/utility/clock.h
Adding         timer-scheduler/utility/clock.c
Adding         timer-scheduler/TimerScheduler.h
Adding         timer-scheduler/examples
Adding         timer-scheduler/examples/Timer5_6
Adding         timer-scheduler/examples/Timer5_6/Timer5_6.pde

Committed revision 2.

Yippee. done.
Now Test. Save the original folder in case of an accident, then add the googlecode folder.

Rename the original folder:
foobar@fizzbin:~/svn$ mv timer-scheduler/ timer-scheduler.tst

After renaming:
foobar@fizzbin:~/svn$ ls -l
drwxr-xr-x 4 foobar foobar 4096 2010-06-12 15:32 timer-scheduler.tst

Check out the svn code. Google does not ask for a password this time:
foobar@fizzbin:~/svn$ svn checkout timer-scheduler  --username kineticsandelectronics
A    timer-scheduler/TimerScheduler.cpp
A    timer-scheduler/utility
A    timer-scheduler/utility/clock.h
A    timer-scheduler/utility/clock.c
A    timer-scheduler/TimerScheduler.h
A    timer-scheduler/examples
A    timer-scheduler/examples/Timer5_6
A    timer-scheduler/examples/Timer5_6/Timer5_6.pde
Checked out revision 2.

View the result:
foobar@fizzbin:~/svn$ ls -l
drwxr-xr-x 5 foobar foobar 4096 2010-06-12 19:06 timer-scheduler
drwxr-xr-x 4 foobar foobar 4096 2010-06-12 15:32 timer-scheduler.tst

Yippie, again.