After repeated prodding, I’ve finally gotten off my butt and released Murky, a GUI client app for the Mercurial version-control system. I’ve been working on it for over a year, and using it a lot myself; I had always planned to open-source it “when it’s ready”, but never actually got around to doing the necessary cleanup and uploading.
I’m happy to say that Murky is finally blinking in the light of day, with its own Mercurial [natch] repository on Bitbucket.
Setting Expectations
Murky isn’t “done”, and this isn’t a 1.0, or even a beta, release. I’m not even providing a compiled app to download, just the source repository. No one but me has ever tested it. About nine months ago Murky became “good enough” for what I usually do, and I’m a happy customer, but I’ve lost the impetus to keep adding things to it. I hope some other people will grab the baton and improve it further. Then we can throw a party for a real 1.0 release, with several names on the About box.
Obligatory Screenshot

Features
Here’s what it can do so far:
- Create a new repository from an existing folder
- Clone a remote (or local) repository
- View the revision history (log) of a repo as a table view, complete with * a visual graph showing the inheritance of revisions
- View the source tree, and the contents of files, from any past revision
- See which files were changed, added or removed in any revision
- Compare revisions of files, either visually with FileMerge, or as straight ‘diff’ output
- Add or remove files from the local working tree
- Commit (or revert) changed files
- Update to a specific revision (past or present)
- Push to or pull from remote repositories
- Automatically detects filesystem changes made by other apps (or by the ‘hg’ tool) and updates the display immediately