以前接手别人留下的项目,第一反应就是犯怵。仓库动辄上百万行,想找个函数定义在哪,grep 跑半天还把 node_modules、build 产物全翻出来,等结果那几秒思路早断了,最后干脆不读,靠猜。
换了 ripgrep 之后,整个节奏都不一样了。不管官方 benchmark 还是我自己测,百万行仓库里搜个关键词基本秒回。我试过在一个 2GB 的 C++ 代码树里搜符号,sub-second 就回来,grep 给不了这体验。更妙的是它默认就认 .gitignore,二进制自动跳过,开箱即用,不用背一长串排除参数。fzf 那帖说得对,终端也能很顺手,但搜代码这块我更服 rg。
说白了,工具快到一个阈值,探索陌生项目就从苦活变成随手翻。敢读才读得懂,读多了才不怕。现在我拿到陌生 repo,第一件事就是 rg 一把梭,先摸清脉络再动手改。