Search code examples
gitmercurialgit-gui

Which is the better commit tool, qct or hgct/gct?


I'm an experienced git user now working with people who use Mercurial. I really miss 'git gui' for helping me with my commits. I see that two tools, qct and hgct, both support Mercurial.

The things I like best about git gui is that it shows all uncommitted files (and untracked files) and makes it easy for me to add whole files or individual diff hunks into a commit/changeset. With that in mind, which tool am I likely to prefer, qct or hgct? And from your experience, are there other grounds for preferring one tool over the other, and if so what are they?


EDIT

I installed qct, hgct, and tortoisehg on a standard Debian testing system. Of the three, qct was the only one to work out of the box. But to do anything interesting, it seems to require a third-party tool like diffmerge. (The web site claims otherwise, but Debian has not yet caught up to reality.)

I found qct quite frustrating. Problems include:

  • Cannot view more than one diff at a time
  • Cannot skip all remaining diffs with one mouse click
  • Cannot go backwards!

My tortoisehg installation experience was frustrating. .deb files are promised on the web site, but they do not exist. Pulling from the latest stable version gave me a tool that simply produced a stack trace on every invocation. (I found a fix, but really!) After upgrading to the latest Debian unstable hg, however, I was very impressed with the Tortoise Hg commit tool. It is far and away the best approximation to git gui.

And as an afterthought, hgct was a clear loss:

picture of hgct lossage on Debian testing

Tortoise Hg is the clear winner.


Solution

  • Like Serge, I'm mostly a command line guy... but let me just note that the TortoiseHg tool is cross-platform -- it took me a very long time to realize this :-)

    I only use their changeset browser (because it's fast and looks good), but they also supply a commit tool which will show uncommitted and untracked files and let you select individual hunks (like hg record on the command line). They have a bunch of screenshots available, which might give you a feel for the interface.