Mercurial リビジョン (完全なノード ID) を選択するためのオートコンプリート テキストフィールドを作成しようとしています。を使用hg log --template '{node}\n'
してすべてのリビジョンを取得できますが、そのコマンドが完了するまでに 1 秒以上かかります。
ユーザーがテキストフィールドに入力を開始すると (たとえば1d34
、 ) hg log --rev 1d34 --template '{node}\n'
、結果のリストが 1d34 で始まるすべてのリビジョンになるようにします。ambiguous identifier!
残念ながら、複数のリビジョンが識別子に一致する場合、Mercurial はエラー ( ) を返します。
コマンドが最初に完了する必要があるため、リストのフィルタリングには時間がかかりすぎるhg log
ため、より迅速な解決策を探しています。hg log
リストをキャッシュすることはできましたが、リポジトリは頻繁に変更されるため、遅いコマンドに戻ってきます。