worktree 与分支
Git 仓库的文件夹页顶部有一条按钮,写着当前的 worktree 和分支。点开是这个仓库的全部 worktree:点一个,侧栏就换到那个 worktree;在当前 worktree 那一行进入「分支」,可以给它换分支。切换 worktree 和分支是 Plus 功能;没有 Plus 时列表照样能看,点别的 worktree 或分支会弹出订阅窗口。
worktree 是什么
「worktree 是什么」一节worktree 是 Git 的功能:同一个仓库同时签出成好几个文件夹,每个文件夹在自己的分支上。很多 AI 工具会给每个任务开一个 worktree,让几个任务同时进行、互不干扰。Resomark 把同一个仓库的 worktree 认作一家,不用你把每个都添加成工作空间。
切换 worktree
「切换 worktree」一节- 点文件夹页顶部的 worktree 按钮,弹出这个仓库的 worktree 列表。
- 每一行是一个 worktree,带着它的分支名和改动颜色,一眼看出哪个有改动。可以搜索(「搜索 Worktree 或分支」)。
- 点一个,侧栏换到那个 worktree 的文件夹页。
切换只换左侧的侧栏:右边正打开的文件、标签和没保存的内容都不动。别的工具新建的 worktree,下次列表刷新时就会出现。在置顶文件夹页里切换,会换到另一个 worktree 里同一位置的文件夹。
收藏和置顶文件夹在同一个仓库的所有 worktree 之间共用。
换分支
「换分支」一节- 在列表里当前 worktree 那一行,点分支按钮,进入「分支」。
- 列表分「本地分支」和「远程分支」,可以搜索。
- 点一个分支切换。只切当前这个 worktree。
为了不弄丢东西,以下情况不让切,会告诉你原因:
- 有未提交的改动:「请先提交或丢弃工作树中的更改,再切换分支。」
- 有没保存的文稿:「请先保存已打开的文稿,再切换分支。」
- Git 正在进行别的操作(比如合并到一半)。
- 这个分支已经在另一个 worktree 里签出了(Git 本身不允许)。
Resomark 不会替你暂存、提交或丢弃改动。
刷新和删除
「刷新和删除」一节- 列表顶部的「刷新」只更新远程分支的信息,不拉取、不推送。
- 不再需要的 worktree,可以在它那一行点垃圾桶删除:删掉的是那个文件夹,分支保留。有改动、有未跟踪或已忽略的文件、被锁定、或正打开着的 worktree 不能删。