本帖最后由 云栈大前端 于 2026-1-20 20:35 编辑
有时候一个小想法就会开一个目录:试个 Vite 配置、跑个接口联调、验证一段脚本……随手一放,过几天再回头找,文件夹名字只剩下 test、demo2、tmp,越翻越心累。
try(tobi/try) 就是为这个场景来的:把你的“实验目录”集中放到一个固定位置,用一个终端界面快速搜索、进入、顺手新建,尽量别让灵感死在文件系统里。
它做什么
try 的思路很朴素:
- 所有实验目录统一放到一个根目录里(默认
~/src/tries,也能改)
- 打开一个终端交互列表(TUI),支持 fuzzy 搜索
- 常用/最近动过的目录自动靠前
- 需要新建时,默认带上日期前缀:
YYYY-MM-DD-xxx
- 另外还支持把仓库
clone 到实验区、用 git worktree 拉一个隔离的试验目录
前端 / 全栈用起来最顺的几个场景
- 做框架试验:比如试下 Next.js、Tailwind CSS、某个构建插件,目录不再散落在桌面和下载文件夹里
- 一次性 PoC:联调、复现、性能验证,做完也能留得住
- 并行验证:想同时跑两个版本?用 worktree 拉一个干净目录出来测试,不影响原工作区
如果你平时也在 云栈社区 记录自己的工具链/效率流,这种“小而实”的项目很适合做成一篇工作流分享。
怎么用(够用就好)
1)安装 + 让它能 “cd 到当前终端”
gem install try-cli
eval "$(try init)"
这里的关键是 try init:它会输出一段 shell 函数,之后你执行 try,实际上是在当前 shell 里 eval 一段脚本,所以才能真的跳目录(这是很多交互式 cd 工具绕不开的点)。
2)日常打开 / 搜索
try
try vite
打开后直接输入关键词就行,回车进入目录。
3)新建一个实验目录(带日期)
在界面里输入一个新名字,会出现 Create new,回车就会创建类似 2026-01-20-your-name 的目录并进入。
4)把仓库拉到实验区
try clone https://github.com/user/repo.git
# 也可以直接:try https://github.com/user/repo.git
5)worktree:做隔离试验很舒服
try worktree feature-test
# 在 repo 内也能用:try . feature-test
它的实现方式(简单说两点)
- Ruby 实现:核心入口在
try.rb,交互与匹配逻辑比较集中
- stdout / stderr 分工清晰:界面渲染走 stderr,stdout 只输出要执行的 shell 脚本,这样不会互相污染,也方便测试
想继续补工程化和工作流思路,可以看看云栈社区的「前端框架 / 工程化实践」;想做开源项目复盘,推荐「开源实战」。
写在最后
我很喜欢 try 的原因不复杂:它不试图“重塑开发”,只是在你每天都会遇到的地方——本地目录——帮你把混乱收一收。对前端和全栈来说,这种工具往往用上就回不去了。
项目配套资源
- GitHub仓库:
github.com/tobi/try
- 学前端:
https://yunpan.plus/f/13
- 学架构:
https://yunpan.plus/f/14
我是《云栈大前端》,关注我获取关于前端、移动、全栈领域的开源项目盘点。
标签: #try #Github #前端工程化 #全栈开发 #命令行工具 #Git #Shell #Ruby
来自圈子: 云栈大前端 |