# cointoss1973.bitbucket.org / thg / manual / 2.4 / faq.html

  1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227  10. Frequently Asked Questions — TortoiseHg 2.4.0 documentation

10. Frequently Asked Questions

What is TortoiseHg?

A Windows shell extension for the Mercurial revision control system, similar to the Tortoise clients for Subversion and CVS. It also includes a thg application for command line use on many platforms.

What comes included in the TortoiseHg binary installer for Windows?

Mercurial, kdiff3, TortoisePlink bonus extensions: hgfold, perfarce, mercurial-keyring. fixfrozenexts, python-svn for hgsubversion and convert extensions, and dulwich for hg-git use. See extension-versions.txt in the TortoiseHg folder for more details on the exact versions packaged.

Is Mercurial on Windows compatible with the index service and virus scanners?

No. Like TortoiseSVN, we recommend to turn off the indexing service on the working copies and repositories, and exclude them from virus scans.

How can I get translations for the Explorer context menu?

The available translations were stored by the installer under C:\Program Files\TortoiseHg\i18n\cmenu. Select the locale you would like to use, double-click on it, and confirm all requests.

How do I do merges and arbitrary version checkouts?

Merges and updates are intended to be done within the Workbench, using changeset context menus

Why can’t I connect to an ssh server (remote: bash: <server name>: command not found)?

TortoisePlink (and basic Plink) will try to use the Host Name configured in Putty under the Default Settings. It adds this host name to its command line parameters, causing the hostname to be specified twice, causing this particular error. Clearing the host name from the Default Settings is a possible workaround.

How can I use tool X as my visual diff tool?

Since version 1.0, TortoiseHg should autodetect most popular visual diff tools and make them available for selection from the Visual Diff Tool item in the settings tool.

How is TortoiseHg configured?

TortoiseHg gets configuration settings from two systems.

1. The Mercurial configuration system, which is three-tiered
1. Site-wide Mercurial.ini in %ProgramFiles%\TortoiseHg
2. Per-User Mercurial.ini in %UserProfile%
3. Per-Repository hgrc in repo-root\.hg
2. The folder %APPDATA%\TortoiseHg:
1. File thg-reporegistry.xml holds the content of the RepoRegistry.
2. File TortoiseHgQt.ini contains the settings for application state (window positions, etc).

These are some of the configurables that are stored in the Mercurial configuration system.

[tortoisehg] vdiff = vdiff editor = gvim tabwidth = 4 longsummary = True authorcolor = True authorcolor.steve = blue

Where do TortoiseHg extensions look for external Python modules on Windows?

TortoiseHg includes an entire Python distribution bundled up as DLLs. The standard library modules are all in the library.zip file in C:\Program Files\TortoiseHg.

If you try to use an extension that imports a non-standard Python module, you will find that the extension will fail to load because it can’t find the module. For example the ReviewBoard extension imports the simplejson module, which is not part of the standard Python distribution.

In order to make it work you need to add a couple of lines to the top of the extension’s .py file, before the line that imports the foreign module:

import sys sys.path.append(r'C:\path\to\module')

Note that this will not work for modules distributed as .egg files; the supplied path must contain the module’s .py or .pyc files.

If you have many extensions and/or hooks that all share the same Python package, you can create an extension which explicitly modifies sys.path for all the others. Simply name the extension such that it is loaded first (alphabetically). Something like:

[extensions] 00setSysPath = C:\path\to\setsyspath.py

Previous topic

9. Use with other VCS systems

Next topic

11. Debugging

This Page