teematsu @ ウィキ
Mercurial
最終更新:
teematsu
日本語対応
http://www.umikabuto.ivory.ne.jp/archives/2063
「ソ」など \ を含む文字が入ったファイル名があるとコミットできない → [Settings]で[Extensions]のwin32mbcsにチェックを入れる。
TortoiseHGを使うと、リポジトリにファイル名がSJISで記録されてしまい、Linuxなどで利用できない。
http://www.asukaze.net/etc/vcs/hg-fixutf8.html
fixutf8 拡張を使う。ただし、対応するのはTortoiseHg 2.1.4 (Mercurial 1.9.3)まで。
このfixutf8を使うと、TortoiseHG利用時で、hgrcを書き換えるような機能を使うと以下のようなエラーが発生する。
Traceback (most recent call last): File "tortoisehg\hgqt\sync.pyo", line 1189, in accept File "tortoisehg\util\wconfig.pyo", line 237, in writefile TypeError: __init__() takes exactly 4 arguments (3 given)
このエラーを回避するには、forkされ修正されたfixutf8を使う。https://bitbucket.org/mponomarenko/hg-fixutf8
いずれのfixutf8でも、日本語ファイル名のファイルについては
- 差分が利用できない。
-
Drag & Dropによるファイル取り出しができない。
差分表示領域には以下のように表示される。
ファイルや差分を表示しません: これはテストです.docx@4cae4a30e6a2: not found in manifest
.hgtags
merge時に衝突したときの参考。フォーマットは次のとおりの模様。
da845436307c45508bf2ceab039691770104a490 testtag da845436307c45508bf2ceab039691770104a490 testtag2 →同じchangesetに別のタグを付けた 7bd41d9d348b6304a07821d78fc5f865c6cc39e2 testtag0 7bd41d9d348b6304a07821d78fc5f865c6cc39e2 testtag →hg tag -f で元のtesttagとは別のchangesetにタグをつけなおした 0000000000000000000000000000000000000000 testtag0 →hg tag --remove でタグを削除した
ファイル名変更
ファイル名変更
hg rename 変更前 変更後
自分でファイルの移動・変更をしてしまったあと、hgにrename相当の処理を実行させる
hg addremove -s 100
"-s 100"は100%一致するものを移動とみなす。
なお、リポジトリに追加されていないファイルは自動的に追加されるし、無くなったファイルは自動的に削除される。
変更前も含めて履歴を追跡する
オプション --follow を付けて実行する。
hg log --follow foo.txt