You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

LazyVim中Telescope在Git仓库内文件搜索失效问题求助

问题分析与解决思路

核心原因

  1. Windows路径格式兼容问题:Telescope的try_worktrees函数在处理Windows盘符路径(如D:\TestRepo)时,因路径分隔符(反斜杠)或盘符识别逻辑的设计偏向Unix类系统,误判该目录不是git仓库,触发报错。
  2. 禁用try_worktrees后空列表的原因:禁用该函数后,Telescope默认调用git_files搜索文件,但Windows下git命令的路径解析可能出错,或者当前git仓库无已跟踪文件,导致返回空列表;另外LazyVim默认在git目录下优先使用git_files而非通用find_files,也会加剧这个问题。

解决步骤

1. 确认git仓库本身有效性

打开PowerShell或CMD,进入D:\TestRepo目录执行git status,若能正常输出仓库状态,说明git本身无问题;若报错,先修复git仓库(如重新初始化或检查.git目录完整性)。

2. 修复Telescope路径识别逻辑

找到Telescope安装目录下的lua/telescope/builtin/__git.lua,修改try_worktrees函数的路径处理:

  • 将路径中的反斜杠统一替换为正斜杠(如D:\TestRepo转为D:/TestRepo)
  • 调整git目录判断逻辑,兼容Windows盘符格式

3. 强制使用通用文件搜索

在LazyVim配置文件(如~/.config/nvim/lua/plugins/telescope.lua)中重新映射快捷键,强制调用find_files绕过git相关逻辑:

return {
  "nvim-telescope/telescope.nvim",
  keys = {
    { "<leader>ff", function() require("telescope.builtin").find_files({ hidden = true }) end, desc = "Find Files" },
  },
}

4. 更新Telescope到最新版本

在nvim中执行:Lazy update telescope.nvim,拉取最新代码,官方可能已修复Windows路径兼容问题。

内容的提问来源于stack exchange,提问作者c0d3r

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.24 16:02:18