I there a way to see what Mercurial commands are issued by Tortoise HG? For instance, if I use the Shelve command in Tortoise, I'd like to see how (and if) it calls 'hg shelve' under the hood.
If you already have Mercurial installed, make sure you have version 1.7 or later. To check, enter hg --version at the command line.
Mercurial on Windows has a three-tier configuration system. A site-wide configuration file in C:\Program Files\TortoiseHg\Mercurial. ini This file is read first and thus has the lowest priority. A per-user configuration file in C:\Documents and Settings\username\Mercurial.
A changeset (sometimes abbreviated "cset") is an atomic collection of changes to files in a repository. It contains all recorded local modification that lead to a new revision of the repository. A changeset is identified uniquely by a changeset ID. In a single repository, you can identify it using a revision number.
In some tools, there's a "View->Always Show Output" option. It causes commands to run in a console window. Though often the displayed command line is truncated because it could contain passwords.
TortoiseHg uses Mercurial at multiple API layers, so there's no universal place to get all the commands it issues. But a couple print statements could get you pretty far.
tortoisehg/hgtk/hgcmd.py - in CmdRunner::execute(), print cmdline tortoisehg/util/hglib.py - in hgcmd_toq(), print args
To see print statements, you typically have to set THGDEBUG in your environment, and run hgtk with the --nofork option.
Shelve in particular is difficult to intercept, because nearly all of that code is internal to TortoiseHg. We have a local copy of the shelve extension and call into it directly.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With