hg
检查比git
慢一些。这导致在使用hg
插件时显示提示较慢。对于
git
,我们使用标准的git rev-parse --is-inside-work-tree
,速度相当快。对于
hg
,我尝试找到类似的命令,但没有一个像这个快:
hg --cwd $PWD root
hg summary
hg root
hg -q stat
git rev-parse --is-inside-work-tree
高效。也尝试了这个小脚本,它是目前最好的。有什么方法可以使这个脚本运行得更快吗?
is_dir_hg() {
local root="$(pwd -P)"
while [[ $root && ! -d $root/.hg ]]
do
root="${root%/*}"
done
echo "$root"
}
请注意,该解决方案必须在不在根目录时也能检测到
hg
目录。