> ## Documentation Index
> Fetch the complete documentation index at: https://vibex.peatboy.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Git 工作流

> 在 Vibex 中检查、隔离、提交和交付代码改动。

Vibex 提供 Git 原生审查界面。它不会替你决定何时提交，也不会在停止 Agent 时自动回滚工作区。

打开右侧栏的 **Git** 图标进入 Git 面板，面板顶部有 **变更** 和 **提交** 两个子标签。

## 查看改动

**变更** 标签显示工作区状态和差异：

* 文件按状态分组，用单字母代码标记：`M` 已修改、`A` 已新增、`D` 已删除、`R` 已重命名、`C` 已复制、`U` 未跟踪、`!` 冲突。
* 选择文件后右侧显示**统一格式（unified）的 diff**，并标明是 `staged` 还是 `unstaged`。
* 空白状态显示 **没有 Git 状态**，没有差异时显示 **没有差异**。

**提交** 标签显示提交历史，支持：

* **搜索提交信息或代码** 按提交信息搜索。
* **分支** 和作者筛选（作者选择器默认 **所有用户**）。
* 按作者日期范围筛选。
* 点击提交打开 **提交详情** 抽屉查看完整差异。抽屉标题截断到 48 个字符，完整标题放进提示；提交正文折叠为三行，可点击或按键盘展开；摘要行显示变更文件数、总新增与总删除，并提供 **双栏显示**、**自动换行**和 **折叠全部文件** 开关；文件行高 36 像素，每条 diff 行以颜色竖条开头。

<Note>
  只有 **提交详情** 抽屉提供并排视图；工作区差异视图目前仍只有统一格式。也**没有逐块（hunk）暂存**——暂存以整个文件为单位。没有 stash 和 tag 界面，需要时请在终端里操作。
</Note>

## 分支与提交

Git 面板工具栏提供 **获取**、**推送**、**刷新 Git**，以及分支创建 / 切换和更多操作菜单。

典型流程：

1. 创建或切换分支。
2. 阅读文件差异。
3. 在文件上执行 **暂存** 或 **取消暂存**（整文件）。
4. 在 **提交信息** 输入框填写消息并提交。
5. 需要追加到上一个提交时使用 **修正上次提交**。
6. **获取** 更新远程引用，**推送** 发布本地提交。

<Warning>
  **回滚**、**检出分支**、**修正上次提交**、**推送**、**合并 Worktree** 和 **丢弃 Worktree** 都会弹出确认对话框，因为它们可能改变已有历史或远程状态。执行前确认分支、远程和待处理差异；团队策略要求时先创建备份分支。
</Warning>

## Worktree

Worktree 是同一个项目下的独立工作区，详见[项目与工作区](/docs/workspaces)。Git 面板提供完整生命周期：

| 操作                                 | 说明                                            |
| ---------------------------------- | --------------------------------------------- |
| **新建 Worktree**                    | 创建隔离目录和关联分支。                                  |
| **检查改动** / **标记可合并**               | 推进到可合并状态。                                     |
| **合并** / **Rebase**                | 合并回目标分支（分别对应 `NoFfMerge` 和 `RebaseAndMerge`）。 |
| **标记已解决**                          | 逐文件解决冲突后标记该文件已处理。                             |
| **中止合并**                           | 放弃正在进行的合并。                                    |
| **重命名 Worktree** / **删除 Worktree** | 重命名或删除。删除会连同未提交内容一起移除。                        |

冲突按文件逐个处理，可以针对每个文件选择保留目标端或来源端版本。

<Info>
  **本地** 工作区直接修改主检出目录；**Worktree** 让并行任务拥有独立目录。无论哪种模式，都以权威运行时的 Git 状态为准。
</Info>

## 常见流程

```text theme={null}
查看 status -> 阅读 diff -> 运行测试 -> stage -> commit -> fetch -> rebase/merge -> push
```

测试或 Agent 仍在运行时不要切换分支。提交前检查敏感文件、生成物和凭据是否被意外加入。

## 移动端

移动端可以读取 Git 状态与差异，也可以执行 stage / unstage / revert / commit / fetch / push 和创建 worktree——前提是设备权限级别为 `full_control`。
