Git 操作
Agent Spaces 内置 Git 操作面板,提供可视化的版本管理功能。
功能概览
Git 面板分为左右两个可拖拽调整大小的子面板(变更列表 / 提交历史),布局持久化在 localStorage,移动端与桌面端分别记忆:
- 变更状态查看 — 查看当前工作区的文件变更状态(新增/修改/删除/未跟踪)
- 变更暂存 — 选择文件变更进入暂存区,支持文件级右键菜单
- 提交 — 填写提交信息并提交,提交对话框支持
git-prompt(基于变更生成 commit message 建议) - 提交记录 — 查看完整的提交历史、单次提交详情(
commit-diff-viewer)和提交级 Diff - Diff 查看 — 查看文件/提交的具体变更内容(
diff-viewer,支持暂存/工作区/历史对比) - 丢弃变更 — 通过
git-discard-dialog丢弃工作区改动 - .gitignore 管理 —
git-gitignore-dialog直接编辑项目的.gitignore模板 - 远程仓库设置 —
git-remote-dialog管理远程仓库地址 - Git 配置 —
git-settings-form配置用户名/邮箱等本地 Git 参数 - 初始化检测 — 工作区未初始化 Git 时显示引导(
git-not-initialized) - Worktree 并行开发 — 独立分支并行开发,Diff 查看、PR 创建/合并,详见 Worktree 并行开发
- Git 操作日志 — 操作审计记录(
git-op-log-dialog)
Agent 自动提交
当配置了提交者 Agent 时,Agent 完成代码修改后会:
- 自动分析所有变更内容
- 生成符合 conventional commit 规范的提交信息
- 提交代码并推送
提交信息格式示例:
feat(auth): add user login with email verification
fix(api): handle null response from user endpoint
docs(readme): update installation instructions
Worktree 并行开发
Worktree 基于 Git worktree 机制,允许在同一工作空间内同时开发多个分支:
创建 Worktree
- 在 Worktree 面板点击「创建 Worktree」
- 输入分支名称,系统自动创建独立的工作树
- 每个 Worktree 关联独立分支,互不干扰
Diff 查看
选择任意 Worktree,查看与主分支或指定分支的代码差异。
PR 创建
- 选择 Worktree 点击「创建 PR」
- 系统通过 Pull Request Agent 自动生成 PR 描述
- AI 分析代码变更,生成标题和详细描述
PR 合并
在 Worktree 面板中直接合并 PR 到目标分支。
WebSocket 事件
worktree.created— Worktree 创建worktree.deleted— Worktree 删除worktree.pr_created— PR 创建worktree.merged— PR 合并
详见 Worktree 并行开发。
Git 操作日志
系统内置 Git 操作审计日志,记录每次 Git 操作的:
- 操作类型(clone/pull/push/commit/checkout 等)
- 输入参数和输出结果
- 操作耗时
- 操作时间
日志存储在内存中,按工作空间隔离,最多保留 1000 条。
工作流建议
推荐的工作方式:
- Agent 在主分支上创建功能分支
- 在功能分支上完成任务
- 审核者检查代码变更
- 提交者生成 commit 并提交
- 合并功能分支回主分支
所有 Git 操作都通过 simple-git 在本地执行,不会直接推送到远程仓库,除非你明确配置了推送行为。