Wiki

Clone wiki

thg-ja / FAQ

TortoiseHg のよくある質問

TortoiseHg って何?

Mercurial 分散構成管理システムのための Windows シェル拡張です。Subversion における TortoiseSVN や、CVS における TortoiseCVS のようなクライアントアプリケーションになります。TortoiseHg は他のプラットフォーム向けにコマンドラインから起動するための hgtk ツールも含んでいます。

Windows 用 TortoiseHg インストーラには何が含まれていますか?

Mercurialkdiff3TortoisePlink、そして拡張機能として forest も同梱しています。

バージョン 0.6 までは QT コミットツール と hg-config も含んでいましたが、バージョン 0.7 からはバンドルされなくなりました。

'failed to import extension hgext.hgconfig...' という警告メッセージはどうすれば消えるの?

バージョン 0.7.2 以降にアップグレードしてください。ただし Windows Vista 環境では少し問題があります。詳しくはバグ管理システムの #135 を参照してください。

SSH サーバに接続できないんだけど・・・ (TortoisePlink.exe - "...cannot execute specified..." みたいなエラーメッセージ)

バージョン 0.7.2 以降には他のライブラリに依存しない TortoisePlink を同梱しているため、アップグレードしてみてください。

古いバージョンの場合は Microsoft Visual C++ 2005 SP1 再頒布可能パッケージ をインストールすることで解決する可能性があります。 それでもうまくいかない場合は コマンドライン版の plink をダウンロードして、ホームディレクトリにある Mercurial.ini の ui.ssh を変更して試してみてください。ssh も参考にはるはずです。

バージョン 0.7 以降の TortoiseHg で Qct を使うことはできますか?

We recommend that you try the commit tool that comes with TortoiseHg before running back to Qct, but here are the instructions should you decide to stick with ole' reliable:

  1. Download and install Qct-1.7-standalone-win32.exe from http://qct.sourceforge.net
  2. Add (or merge) the following into your Mercurial.ini
[extensions]
qct = 

[tortoisehg]
extcommit = qct

[qct]
path = "C:\Program Files\qct\qct.exe"

Now the 'HG Commit' menu option should launch Qct, and 'hg qct' should work from the command line.

TortoiseHg で hgk (hg view) を使うことはできますか?

Download tclkit and place it in your TortoiseHg directory. Download the hgk script from the Mercurial repository and place it in your TortoiseHg\contrib directory. Create an hgk.cmd file and place it in TortoiseHg\scripts. This file should contain:

@set HG=C:\Program Files\TortoiseHg\hg.exe
@"C:\Program Files\TortoiseHg\tclkit-win32.exe" "C:\Program Files\TortoiseHg\contrib\hgk" %*

Then enable hgk in your Mercurial.ini file:

[extensions]
hgext.hgk =

[hgk]
path=C:\Program Files\TortoiseHg\scripts\hgk.cmd
vdiff=vdiff

Then tell TortoiseHg to use hgk as your external log viewer in your Mercurial.ini file. This will enable the 'Revision Graph' entry in the context menu and cause it to launch hgk. The 'View Changelog' menu entry will still launch TortoiseHg's changelog viewer.

[tortoisehg]
view = hgk

GUI の Diff ツールとして WinMerge を使うにはどうすればいいの?

以下の設定をホームディレクトリにある Mercurial.ini ファイルに追加してください。

[extdiff]
cmd.winmerge = C:\Program Files\WinMerge\WinMerge.exe
opts.winmerge = /e /x /ub /wl

次に TortoiseHg のグローバル設定ダイアログを開きます。エクスプローラを右クリックして TortoiseHg -> Settings -> Global で開けます。 「TortoiseHg」タブにある "Visual Diff Command" のドロップダウンの中に "winmerge" という項目が追加されているので、それを選択して、「適用」ボダンを押して設定ダイアログを閉じてください。

他の WinMerge のような GUI の差分表示ツールでもこの方法で対応可能ですが、TortoiseHg ではディレクトリの差分表示の機能を使うため、それをサポートしている必要があります。

#125 の問題は TortoiseHg 0.7.3 で解決されました。

GUI の Diff ツールとして Araxis Merge を使うにはどうすればいいの?

以下の設定をホームディレクトリにある Mercurial.ini ファイルに追加してください。

[extdiff]
cmd.adiff=C:\Program Files\Araxis\Araxis Merge v6.5\compare.exe
opts.adiff=/wait

次に TortoiseHg のグローバル設定ダイアログを開きます。エクスプローラを右クリックして TortoiseHg -> Settings -> Global で開けます。 「TortoiseHg」タブにある "Visual Diff Command" のドロップダウンの中に "adiff" という項目が追加されているので、それを選択して、「適用」ボダンを押して設定ダイアログを閉じてください。

#125 の問題は TortoiseHg 0.7.3 で解決されました。

TortoiseHg は Windows Vista で動きますか?

バージョン 0.4 以降は Windows Vista の 32 ビット版であれば動作しますが、64 ビット版ではまだ問題があります。64 ビットの Windows エクスプローラでは右クリックメニューが正常に動作しません。32ビットの Windows エクスプーラを使えば動作します。また、FreeCommander や TotalCommander などのファイラーを使っても可能です。

バージョン 0.7 より前の TortoiseHg は GTK テーマを Windows Vista で使うと問題が起こるので注意が必要です。バージョン 0.7 ではデフォルトのテーマを変更したため Vista でも動きます。バージョン 0.7.1 では GTK 本体をバージョンアップしたので Vista で MS-Windows テーマを使用しても問題なく動くようになりました。

64ビット版 Windows Vista で右クリックメニューを動かすにはどうすればいいですか?

Windows エクスプーラが 64 ビットプログラムであることが問題で、64 ビットプログラムと 32 ビットのライブラリは直接やり取りすることができません。しかし幸運なことに 64 ビット版 Windows には 32 ビット版のエクスプローラが添付されています。32 ビット版エクスプローラを起動するために、次のような設定でショートカットを作ってください:

Target: %windir%\syswow64\explorer.exe /separate
Start In: %windir%\syswow64\

このショートカットから起動されたエクスプローラからは TortoiseHg のシェル拡張にアクセスすることができます。

シェル拡張を無効にする方法は?(オーバーレイアイコンと右クリックメニュー)

以下のコマンドを管理者権限で実行してください:

regsvr32 /u C:\Program Files\TortoiseHg\tortoisehg.dll

"/u" というオプションを外せば再びシェル拡張を有効にすることができます。 シェル拡張の有効化と無効化はどちらも Windows の再起動後に反映されます。

TortoiseHg はどこに設定を保存しているの?

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 Mercurial.ini in {repo-root}\.hg\hgrc
  2. %APPDATA%\Tortoisehg settings for application state (window positions, etc)

These are configurables that are stored the Mercurial configuration system.

[tortoisehg]
extcommit = None
vdiff = vdiff
editor = gvim
tabwidth = 4
longsummary = True
copyhash = False
graphlimit = 500
authorcolor = True
authorcolor.steve = blue
# disable overlay icons (yes, no, localdisks), nicely explained at http://www.selenic.com/pipermail/mercurial/2008-April/018563.html
overlayicons = False

See also Settings, and #50

フォントの変更はできますか?

In some cases, yes. The gtools based dialogs (commit, status, shelve) allow some font configuration.

[gtools]
# font used in changeset viewer and commit log text
fontcomment = courier 10
# font used for diffs in status and commit tools
fontdiff = courier 10
# font used in file lists in status and commit tools
fontlist = courier 9

# make the integrated diff window appear at the bottom or side
# (applies to commit and status dialogs)
diffbottom = False

GTK のテーマを変更するにはどうすればいいの?

In 0.7, the theme is selectable at install time. For older releases, (and after install on 0.7) you can still do this manually

  • cd C:\Program Files\TortoiseHg\share\themes
  • look at the themes in this directory, remember their names or keep this folder open.
  • cd ..\..\etc\gtk-2.0
  • edit gtkrc and change the name of the theme you wish to use
  • Vista may try to prevent you from editing the file directly. I work around this by copying to your desktop, editing it there, then copying it back (and answering all the security dialogs)
  • Changes immediately take affect on all newly launched applications

You also should be able to download new themes and copy them into the share\themes directory and then enable them in your gtkrc.

Why does TortoiseHg think my home directory is revision controlled?

An older version of gtools that shipped with the initial release of TortoiseHg stored it's configuration in a ~/.hg/ directory, and this confuses Mercurial. This was fixed in later releases. It is safe to remove the ~/.hg directory if you are sure it is not a repository (it has no store/ directory, for instance).

In 0.7.1, the location was changed again from ~\.tortoisehg to %APPDATA%\TortoiseHg. This fixed permissions problems that many users were experiencing.

In total, there have been four locations for these configuraton files:

  1. ~/.hg
  2. ~/.hgext
  3. ~/.tortoisehg/settings still the default on non-Windows platforms
  4. %APPDATA%\TortoiseHg

I don't predict it moving again, and once you have release 0.7.1 or later it is safe to delete any of those older folders that you find in your home directory.

アンインストールしても大量の DLL とか PYD という拡張子のファイルが残ってしまう

再起動してください、とアンインストーラが指示しているはずです
アンインストーラはファイルを削除しますが、Windows が起動している状態では削除できないファイルもあるため、それらは次回起動時に削除されるように設定されています。

Subversion のリポジトリを Mercurial に変換する方法は?

You must install svn-win32-1.4.6 command line tools, then add them to your path. Then you must enable the convert extension. At this point, you should be able to use the 'hg convert' command to do the conversion. Please direct problems/questions about the convert extension to the Mercurial mailing list or #mercurial on irc.freenode.net.

Windows の TortoiseHg はどこの Python モジュールを参照しているの?

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('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.

--
原文: http://bitbucket.org/tortoisehg/stable/wiki/FAQ
翻訳者: Yuki Kodama (kuy)

Updated