Wednesday, November 12, 2008

I'm converted

For quite a while now, I have been hearing a lot about how cool distributed version control systems are and then a few months ago, Brad Fish posted about git and gave it a glowing endorsement, so I finally got around to doing a little detailed research and trying one out for myself.

While I can't stand Linus personality, I have to admit that the DVCS idea is just plain AMAZING. I personally like Mercurial over git since it uses the same interface as CVS/SVN whenever possible and it seems to be a little simpler than git without giving up any of the advantages (I'm still new to both of them, so that may not necessarily be true). One of Linus' big knocks on Mercurial was that it couldn't scale and that it couldn't perform as well as git, but in the benchmarks/timing studies that I could find they seemed to be in the same ballpark, so maybe that claim was earlier in the development cycle or something.

But at any rate, I think that the ease of merging branches is a HUGE gain and I have already cleaned up some of the ugly brances and odd copies that I had hanging around on my computer. I'm definitely converted to the DVCS revolution.

I would also just like to add that to get WinMerge to work with TortoiseHg 0.5 I added the following lines to my mercurial.ini file:
[extensions]
hgext.extdiff=

[extdiff]
cmd.vdiff = C:\Program Files\WinMerge\WinMergeU.exe
They have a wiki page describing how to setup merge tools, but I couldn't get it to work for some reason, but the above worked.

Thursday, November 6, 2008

Foreign Keys in SQLite

As a followup to my previous post on foreign keys in SQLite, I just wanted to point out that code to generate the triggers to emulate foreign keys has been official added to SQLite in version 3.6.4.

sqlite-manager

Maybe everyone already know about this, but I just stumbled across sqlite-manager. It's a Firefox add-on that can also be run with XULRunner which allows you admin an SQL database using a GUI. It's still somewhat early on in development, but it's functional and VERY useful. So go check it out for yourself.