James Tauber's Blog 2004/12/22


blog > 2004 > 12 >


Branching in Subversion

I'm just about to release Leonardo 0.4.0 so I thought I'd better learn how to branch in Subversion. Turned out to embarrassingly easy:

svn copy trunk branches/0.4

assuming you've got the entire tree checked out (otherwise it can be done almost as easily with URLs).

But it did get me thinking. Previously I've talked about replacing the structure recommended by the O'Reilly Subversion book

/branches /tags /trunk

with more explicit indications of what I use tags for:

/branches /checkpoints /milestones /releases /trunk

with further structure possible under the first four directories before getting to the actual source code.

Well, if I understand correctly, there is nothing special about the /trunk directory. I'm not even sure Subversion really has a notion of a trunk. So why not only have branches?

In other words, instead of keeping the latest development under /trunk and maintenance branches under /branches, why not have a branch for the current development version alongside the branches for maintenance. Something like:

/branches/0.4 /branches/0.5

where (in Leonardo's current state), next-version development takes place under /branches/0.5 and maintenance on 0.4 is done under /branches/0.4

Unless I'm missing something, this seems a clean way of organising things that is native Subversion. The original suggestion given by the Subversion book really makes sense only if you're coming from CVS.

Again, unless I'm missing something :-)

UPDATE (2004-12-23): Justin Johnson, in email noted:

The reason for using trunk is so that developers can continue working on the latest release without having to setup a new working copy everytime the project releases. For example, I were working on 0.4 and then 0.4 released and we created a 0.5 branch, I'd have to clobber my working copy and create a new one. But if I were looking at the trunk, I would be guaranteed that it always points to the latest release that is still in development. It may seem like a minor point, but when you have a lot of developers and when the size of the project is significant, it makes a huge difference.

This is a good point. I did consider the issue of "knowing which is the development branch" and that actually made me wonder about having aliases in Subversion.

However, in my own experience, for commercial software development at least, the developers (even on big projects) all know exactly what version is the latest development version and it is an important "event" in the engineering organization when a new branch is made.

I can see that, for distributed open source development, particularly if the cycles are short, a clearly designated trunk becomes more important, though.

by : Created on Dec. 22, 2004 : Last modified Feb. 8, 2005 : (permalink)


Flickr and DataLibre

Darren Barefoot has come around on Flickr after earlier making the very DataLibre comment "I’ve yet to be convinced that the best place for my online photos isn’t on my own site."

He says it's the convenience that's won him over. Any feature in particular, Darren?

I certainly have found it easier to put photos up on Flickr than on jtauber.com, but that's just because of the current state of Leonardo. There's no reason why, in the future, Leonardo couldn't provide things like Windows Publishing Wizard support and iPhoto integration to make it just as easy to get stuff up on my own website.

But even then, I might still consider using Flickr. As I've mentioned before, I'm interesting in separating aggregation and hosting, not eliminating aggregation. I should be able to take advantage of Flickr's aggregation by pointing them to my self-hosted photos.

by : Created on Dec. 22, 2004 : Last modified Feb. 8, 2005 : (permalink)


Happy Birthday Konrad Tauber

Today is my father's 56th birthday.

He opened up both the world of computers and the world of business to me. He gave me endless opportunities while always leaving the path up to me. He also taught me that business is about people.

I love you dad. Happy Birthday!

by : Created on Dec. 22, 2004 : Last modified Feb. 8, 2005 : (permalink)


LinkRanks Ups and Downs

PubSub LinkRanks seem to be very sensitive to very recent activity which means one's rank can jump around a lot. I'm guessing this is particularly true at the long tail where just one link can leap frog you over hundreds of thousands of fellow bloggers.

Yesterday I was 938,610, today I am 89,060. I've been sub-100,000 before but I also spend time around the 1,000,000 mark if I haven't been linked to in the last week or so.

Oddly, Trevor Cook and others are reporting their rank has dropped recently. Perhaps some highly weighted bloggers just dropped out of the time-weighted window of referrers for their sites.

Or maybe PubSub have changed their algorithm. They say they are still refining it.

Incidentally, I'll use the recommended PSI so PubSub know I'm talking about them.

by : Created on Dec. 22, 2004 : Last modified Feb. 8, 2005 : (permalink)