用 worktrunk 并行处理两个 git 任务时,先从同一个基线创建两个工作树,再分别检查它们的目录、分支和未提交文件。wt list 可以从任一工作树查看整体状态。
从一个已有提交的仓库开始
要是只是用来练手,直接在空目录里输下面的命令就能搭出测试仓库。如果Git弹出提示说没配置提交身份,先在当前仓库里跑 git config user.name 和 git config user.email 把身份配好,之后提交代码就不会报错。
mkdir worktrunk-switch-demo cd worktrunk-switch-demo git init -b main printf 'Worktrunk practice\n' > README.md git add README.md git commit -m 'Start Worktrunk practice'
从 main 开出两个任务工作树
先给当前 zsh 会话开启 shell 集成。加 --base main 参数是明确两个任务都以 main 分支为起点,哪怕第二条创建命令是在第一个任务的目录里执行,也不会切错基线。
eval "$(wt config shell init zsh)" wt switch -c feature/docs --base main git branch --show-current pwd wt switch -c fix/notes --base main git branch --show-current pwd

切换已有工作树时去掉创建参数
之后要切回文档任务,直接跑 wt switch feature/docs 就可以,不用加 -c 创建参数。如果命令提示切换成功,但敲 pwd 发现路径没变,先检查 type wt 的输出是否正常,也可以顺着输出的路径手动进入对应目录。
想先看各分支的差异,在支持交互的终端直接运行 wt switch,就能用选择器浏览所有已有的工作树。

确认一个任务的草稿不会出现在另一个任务
可以手动验证两个工作树完全隔离:先切到 fix/notes 新建一份未提交的草稿,查看状态,再切到 feature/docs 目录做检查,确认两边内容互不干扰。最后跑 wt list 就能查看所有工作树的登记信息,也可以直接用原生 Git 命令核对所有注册的工作树路径。
wt switch fix/notes printf 'draft\n' > scratch.txt git status --short wt switch feature/docs git status --short wt list git worktree list


















