Hg Workbenchが開かない

492 views
Skip to first unread message

Hidetoshi Kamata

unread,
Oct 16, 2011, 8:58:22 PM10/16/11
to mercurial-ja
カマタです。

先週末から突然 Hg Workbenchが開かなくなってしまったのですが、
何か、原因に思い当たるところがあれば教えてください。
環境はWindows XP SP3です。

ひとまず、以下のことは試してみたのですが、改善しませんでした。
・Windows再起動
・TortoiseHgをアンインストールし、最新版をインストール。

コミットや同期ツールは起動しますし、動作します。

エラー内容は以下です。

{{{
#!python
** Mercurial version (1.9.3). TortoiseHg version (2.1.4)
** Command:
** CWD: C:\Documents and Settings\hidetoshi.kamata
** Encoding: cp932
** Extensions loaded: win32text, win32mbcs
** Python version: 2.6.6 (r266:84297, Aug 24 2010, 18:46:32) [MSC v.
1500 32 bit (Intel)]
** Windows version: (5, 1, 2600, 2, 'Service Pack 3')
** Processor architecture: x86
** Qt-4.7.1 PyQt-4.8.3
Traceback (most recent call last):
File "tortoisehg\hgqt\run.pyo", line 547, in __call__
File "tortoisehg\hgqt\workbench.pyo", line 906, in run
File "tortoisehg\hgqt\workbench.pyo", line 69, in __init__
File "tortoisehg\hgqt\workbench.pyo", line 827, in restoreSettings
File "tortoisehg\hgqt\reporegistry.pyo", line 300, in
setShowShortPaths
File "tortoisehg\hgqt\repotreemodel.pyo", line 326, in
updateCommonPaths
File "tortoisehg\hgqt\repotreeitem.pyo", line 489, in
updateCommonPath
File "ntpath.pyo", line 205, in dirname
File "hgext\win32mbcs.pyo", line 119, in f
File "hgext\win32mbcs.pyo", line 102, in wrapper
Abort: [win32mbcs] 文字コード 'cp932' によるファイル名変換に失敗


}}}

Hidetoshi Kamata

unread,
Oct 16, 2011, 10:54:10 PM10/16/11
to mercurial-ja
カマタです。

暫定対処でもなんとかしなくてはいけなかったので、
わからないなりに以下の方法で対処してみました。

1. スタックトレースを見る限り、リポジトリのパスを取得するときに落ちている風であることを確認。
2. Hg Workbenchの単体起動時にリポジトリのパスを取得するのは、「リポジトリ一覧」ぐらい。
3. リポジトリ一覧を削除すればひとまずなんとかなると判断。
4. Global Settingのエクステンションでwin32mbcsを外す。
5. Hg Workbenchを起動。
6. リポジトリ一覧を削除。
7. Global Settingのエクステンションでwin32mbcsをチェック。

以後、Hg Workbenchは普通に起動できるようになっています。

Yuya Nishihara

unread,
Oct 17, 2011, 9:11:09 AM10/17/11
to mercur...@googlegroups.com
西原です。こんばんは。

Hidetoshi Kamata wrote:
> 1. スタックトレースを見る限り、リポジトリのパスを取得するときに落ちている風であることを確認。
> 2. Hg Workbenchの単体起動時にリポジトリのパスを取得するのは、「リポジトリ一覧」ぐらい。
> 3. リポジトリ一覧を削除すればひとまずなんとかなると判断。
> 4. Global Settingのエクステンションでwin32mbcsを外す。
> 5. Hg Workbenchを起動。
> 6. リポジトリ一覧を削除。
> 7. Global Settingのエクステンションでwin32mbcsをチェック。

文字コード変換周りのバグかもしれません。

問題が出た時の thg-reporegistry.xml がもし残っているようなら、
私信で送っていただけないでしょうか?

よろしくお願いします。
では。

フジワラ

unread,
Oct 17, 2011, 9:47:33 AM10/17/11
to mercurial-ja
フジワラです。

On 10月17日, 午前11:54, Hidetoshi Kamata <hidetoshi.kam...@gmail.com>
wrote:
win32mbcs の有無で、内部データ(カマタさんの推測では「リポジトリ一覧」ファイル)
の形式に異常が発生しているのかも?という推測の元で、
私の環境(TortoiseHG 2.1.4, winxp SP3)で、以下の手順で試してみましたが、
スタックダンプで中断するような現象は見られませんでした。

1. 日本語を含むパス配下にリポジトリを作成
2. win32mbcs 無しで HG Workbench を開く → 特に問題なし
3. HG Workbench を終了
4. リポジトリ一覧(Document and Setting/xxx/Application Data/TortoiseHg 配下)を削除
5. win32mbcs を有効化して HG Workbench を開く → 特に問題なし

# ひょっとして、旧版で運用していた環境で、新版を動かすのが肝とか?

ちなみに日本語を含むパスのリポジトリでは:

- 「エクスプローラ」の起動に失敗(「ターミナル」は起動可能)
- 「設定」ダイアログからの「ファイルを開く」で正しいファイルが開かれない
※ 変更の書き出しや、設定内容の読み込みは正常に機能している

という現象が見られましたが、これは既知なのかな? > HG Workbench

Hidetoshi Kamata

unread,
Oct 17, 2011, 8:28:51 PM10/17/11
to mercur...@googlegroups.com
カマタです。

西原さん、フジワラさん。
ありがとうございます。

問題が出た時のthg-reporegistry.xmlは、
保存していなかったため、残っていません。

その後、色々と考えてみたのですが、
原因と思われるトリガーを思いついたので、
時間がとれたら再現テストしてみたいと思います。

1. 先週末の時点で発生した。
2. 先週末にpush先のリポジトリ保存フォルダの構成(ネットワークフォルダ)が大幅に変更された。
3. push先のリポジトリも「リポジトリ一覧」にリストされていた。
※push先となるRemote Repositoryは更新してたのでpushとpullは問題なし

リポジトリ一覧がthg-reporegistry.xmlに保存されている
ということを教えて頂いたので、今度は内容もチェックします。

とりあえず、お礼まで。

Yuya Nishihara

unread,
Oct 18, 2011, 10:24:44 AM10/18/11
to mercur...@googlegroups.com
西原です。こんばんは。

Hidetoshi Kamata wrote:
> 問題が出た時のthg-reporegistry.xmlは、
> 保存していなかったため、残っていません。
...
> リポジトリ一覧がthg-reporegistry.xmlに保存されている
> ということを教えて頂いたので、今度は内容もチェックします。

再現したらぜひ教えて下さい。
よろしくお願いします。

フジワラ wrote:
> ちなみに日本語を含むパスのリポジトリでは:
>
> - 「エクスプローラ」の起動に失敗(「ターミナル」は起動可能)
> - 「設定」ダイアログからの「ファイルを開く」で正しいファイルが開かれない
>
> ※ 変更の書き出しや、設定内容の読み込みは正常に機能している
>
> という現象が見られましたが、これは既知なのかな? > HG Workbench

『「設定」ダイアログからの「ファイルを開く」』はバグですね。ローカルエンコード
文字列をそのまま Qt に渡してました。
「エクスプローラ」の方は文字コードに対処してそうに見えるんですが、何かミスって
いるのかもしれません。調べてみます。

それでは。

Hidetoshi Kamata

unread,
Oct 19, 2011, 7:27:18 PM10/19/11
to mercur...@googlegroups.com
西原さん、みなさん。こんにちは。
カマタです。

その後、再現テストをしてみたのですが、
現象を再現することができませんでした…。

現象が起こった時は、
ネットワークドライブ設定を切ったり、
別名で繋いだりといった操作もしていたので、
そっちの方で問題が起こったのかとも思ったのですが、
不具合を再現できない状況です。

# 設定ダイアログの「ファイルを開く」や
# 「エクスプローラ」の方は、確かに再現しますね。


2011年10月18日23:24 Yuya Nishihara <you...@gmail.com>:

> --
> from Mercurial 日本語コミュニティ <mercur...@googlegroups.com>
> ※ ヘルプ表示は http://groups.google.com/group/mercurial-ja?hl=ja

Yuya Nishihara

unread,
Oct 23, 2011, 10:17:50 AM10/23/11
to mercur...@googlegroups.com
こんばんは。西原です。

> > フジワラ wrote:
> >> ちなみに日本語を含むパスのリポジトリでは:
> >>
> >> - 「エクスプローラ」の起動に失敗(「ターミナル」は起動可能)
> >> - 「設定」ダイアログからの「ファイルを開く」で正しいファイルが開かれない

...


> > 「エクスプローラ」の方は文字コードに対処してそうに見えるんですが、何かミスって
> > いるのかもしれません。調べてみます。

default ブランチの方で修正されていました。

この辺だと思われる:
https://bitbucket.org/tortoisehg/thg/changeset/439a88ea1679

次のリリースでは上記 2 件とも修正が入ると思います。

それでは。

Reply all
Reply to author
Forward
0 new messages