Subversion is a great version control tool, but the scripts that accompany it are still immature. One of them, commit-email.pl is particularly bad. It goes on and on for hundreds of lines, and the end result is very poor usability. Earlier tonight, I found a better solution on the Web with color and all, then I fixed it. But I can’t figure out who I stole this from. In any case, here is my fixed commit-email.rb (run gunzip on it first). You may have to change the first line. To activate the script, edit the post-commit file of you repository (or create it from post-commit.tmpl) and make sure you have the following:


REPOS="$1"
REV="$2"
./commit-email.rb "$REPOS" "$REV"

where “commit-email.rb” is located in the same directory as “post-commit”.

Suppose you have incorrectly checked in a change to a file in a subversion repository. How do you revert back? This is documented elsewhere, but I want to document just exactly how I do it.

First of all, you need to know what are the most recent versions of your file, to figure it out, just do:


svn log myfile | head -n 10

where “-n 10″ is meant to only give you the first 10 lines of the log files, but you may need more if the comments are exhaustive. This should give you the latest revisions. Say they are 122 and 227, then just do reverse merge, like so:


svn merge -r 227:122 myfile
svn diff myfile
svn ci

The command “svn diff” is necessary to make sure that, indeed, you have reverted back the right changes.

I just found out about IEs4Linux. This is a beautiful project that allows you to run various version of Internet Explorer under Linux very easily. Ideal for testing out your web sites under IE!

The first few entries in the Netflix prize are up. The Netflix prize is 1 millions $ given to the first person to be able to improve by 10% the Netflix recommender system according to RMSE (Root Mean Square Error) metric. People asked me if I would participate. Well, no I will not be involved as a participant, but I will be an observer.

I got an email from Anno Langen who is participating (under the pseudonym Actual Proof) and he is currently in eigth place using an algorithm from my Scale And Translation Invariant Collaborative Filtering Systems paper. Because Netflix is using the RMSE metric, I think that Scale and Translation invariance becomes an important factor.

« Previous Page

Powered by WordPress