CS Greasy on Launchpad

I created a project on Launchpad for the first time today. It’s called CS Greasy, a collection (or soon to be a collection) of Greasemonkey scripts related to CouchSurfing. It took a little time to figure it out, but thanks to Kasper’s help, I think we’ve got it working now.

I created a new team called ~csgreasy. The tilda (~) distinguishes teams and users from projects. So the project name is csgreasy, the team name that owns the project is ~csgreasy. The team is open, so anyone can join. Upon joining, new members can commit code immediately. Once you’ve joined the team, the commands to check out and commit code are:

bzr branch lp:csgreasy/trunk
# make some changes
bzr push lp:csgreasy/trunk

After the first push, subsequent changes can be pushed with just `bzr push`, the location will be remembered from last time. Now anyone with bazaar and some javascript skills can contribute. To get started, install bazaar, register on launchpad, join the team, branch, start hacking, push back changes. Happy hacking… :-)

Creating Launchpad projects

Creating the project was relatively simple. There were a couple of steps I didn’t fully understand at first, it was simple once I got it.

Firstly, I registered a project. Second, I created a team. Then, instead of pushing branches to lp:~user-name/project-name/branch-name, I can push to ~team-name/project-name/branch-name. Using the team name instead of my own username means that the code is owned by the team and can be edited by anyone else in the team. A team on launchpad is essentially a regular user that consists of multiple other users. Very handy. That’s the whole process. :-)

Goodbye svn hello bazaar

Star cookies by the Frankfurt SchoolI’ve spent a lot of this week fighting with svn. Things that should have been simple, somehow kept failing. I was merging changes from a read-only http repo into a local working copy, which is checked out from an https repo. For some reason, that doesn’t work. Normally it does, but on this large merge, it just borked.

Thankfully the remote repo is also available over https. That solved the first problem. I merged, tidied up, and was ready to commit. Then the commit failed because svn was trying to do something fancy with the merge-from repo. I don’t know what or why, but it wouldn’t commit the files. So then I spent hours and hours trying various things. In the end I reverted all the newly created files, then added them back to the working copy, and finally it would commit.

What a pain in the ass.

I’m planning to explore bazaar for all my own version control needs, and if it works well, I’ll switch all our projects over. I’m hoping, like Ubuntu, it just works. :)