バージョン 1.5.0 以降、TortoiseSVN ではコンテキストメニューエントリを無効(実際には非表示)にすることができます。これは安易に使用すべき機能ではなく、やむを得ない理由がある場合にのみ使用すべき機能であるため、GUI は用意されておらず、レジストリで直接設定する必要があります。これは、使用すべきでないユーザーのために特定のコマンドを無効にするために使用できます。ただし、エクスプローラーのコンテキストメニューエントリのみが非表示になり、コマンドはコマンドラインや TortoiseSVN 自体の他のダイアログなど、他の手段でも引き続き利用可能であることに注意してください!
コンテキストメニューの表示に関する情報を保持するレジストリキーは、HKEY_CURRENT_USER\Software\TortoiseSVN\ContextMenuEntriesMaskLow
および HKEY_CURRENT_USER\Software\TortoiseSVN\ContextMenuEntriesMaskHigh
です。
これらのレジストリエントリはそれぞれ DWORD
値であり、各ビットは特定のメニューエントリに対応しています。ビットがセットされている場合、対応するメニューエントリは無効になります。
表 C.1. メニューエントリとそれらの値
値 | メニューエントリ |
---|---|
0x0000000000000001 | チェックアウト |
0x0000000000000002 | 更新 |
0x0000000000000004 | コミット |
0x0000000000000008 | 追加 |
0x0000000000000010 | 元に戻す |
0x0000000000000020 | クリーンアップ |
0x0000000000000040 | 競合解消 |
0x0000000000000080 | 切り替え |
0x0000000000000100 | インポート |
0x0000000000000200 | エクスポート |
0x0000000000000400 | ここにリポジトリを作成 |
0x0000000000000800 | ブランチ/タグ |
0x0000000000001000 | マージ |
0x0000000000002000 | 削除 |
0x0000000000004000 | 名前変更 |
0x0000000000008000 | 特定リビジョンに更新 |
0x0000000000010000 | 差分 |
0x0000000000020000 | ログを表示 |
0x0000000000040000 | 競合の編集 |
0x0000000000080000 | 再配置 |
0x0000000000100000 | 変更の確認 |
0x0000000000200000 | 無視 |
0x0000000000400000 | リポジトリブラウザ |
0x0000000000800000 | 責務 |
0x0000000001000000 | パッチを作成 |
0x0000000002000000 | パッチを適用 |
0x0000000004000000 | リビジョングラフ |
0x0000000008000000 | ロック |
0x0000000010000000 | ロック解除 |
0x0000000020000000 | プロパティ |
0x0000000040000000 | URLと比較 |
0x0000000080000000 | バージョン管理されていないアイテムを削除 |
0x0000000100000000 | すべてマージ |
0x0000000200000000 | 前のバージョンと比較 |
0x0000000400000000 | ペースト |
0x0000000800000000 | ワーキングコピーのアップグレード |
0x0000001000000000 | 後で差分 |
0x0000002000000000 | 「ファイル名」と比較 |
0x0000004000000000 | 統一差分 |
0x2000000000000000 | 設定 |
0x4000000000000000 | ヘルプ |
0x8000000000000000 | バージョン情報 |
例:“再配置”、“バージョン管理されていないアイテムを削除”、および “設定” メニューエントリを無効にするには、エントリに割り当てられた値を次のように加算します
0x0000000000080000 + 0x0000000080000000 + 0x2000000000000000 = 0x2000000080080000
下位の DWORD
値 (0x80080000
) は HKEY_CURRENT_USER\Software\TortoiseSVN\ContextMenuEntriesMaskLow
に、上位の DWORD
値 (0x20000000
) は HKEY_CURRENT_USER\Software\TortoiseSVN\ContextMenuEntriesMaskHigh
に格納する必要があります。
メニューエントリを再度有効にするには、2 つのレジストリキーを削除するだけです。