检查点
检查点在 VJSP 任务期间自动对你的工作区文件进行版本控制,从而实现对 AI 建议的非破坏性探索,并轻松从不需要的更改中恢复。
检查点让你能够:
安全地试验 AI 建议的更改
轻松从不需要的修改中恢复
比较不同的实现方法
恢复到以前的项目状态而不会丢失工作
ⓘ 重要说明
检查点默认启用。
必须安装 Git 才能使检查点正常工作
无需 GitHub 帐户或仓库
无需 Git 个人信息配置
影子 Git 仓库独立于你项目现有的 Git 配置运行
配置选项
在 VJSP 设置的“存档点”部分访问检查点设置:
单击齿轮图标 ⚙️ → 存档点 打开设置
选中或取消选中“启用自动存档点”复选框
检查点工作原理
VJSP 使用一个影子 Git 仓库(独立于你的主版本控制系统)捕获项目状态的快照。这些快照称为检查点,会在你的 AI 辅助工作流中自动记录更改——无论任务何时开始、文件何时更改或命令何时运行。
检查点作为 Git 提交存储在影子仓库中,捕获:
文件内容更改
添加的新文件
删除的文件
重命名文件
二进制文件更改
使用检查点
检查点直接通过聊天界面集成到你的工作流中。
检查点以两种形式直接出现在你的聊天历史记录中:
- 初始检查点标记你的起始项目状态
- 常规检查点在文件修改或命令执行后出现
每个检查点提供两个主要功能:
查看差异
要将当前工作区与以前的检查点进行比较:
在聊天历史记录中找到检查点
单击检查点的查看差异按钮
在比较视图中查看差异:
添加的行以绿色突出显示
删除的行以红色突出显示
修改的文件列出详细更改
重命名和移动的文件跟踪其路径更改
新建或删除的文件清晰标记

恢复检查点
要将项目恢复到以前的检查点状态:
在聊天历史记录中找到检查点
单击检查点的恢复检查点按钮
- 选择以下恢复选项之一:

仅恢复文件 - 仅将工作区文件恢复到检查点状态,而不修改对话历史记录。非常适合在保持聊天上下文的同时比较替代实现,让你可以在不同项目状态之间无缝切换。此选项无需确认,可让你快速在不同实现之间切换。
恢复文件和任务 - 恢复工作区文件并删除所有后续对话消息。当你希望将代码和对话完全重置回检查点的时间点时使用。此选项需要在对话框中进行确认,因为它无法撤消。
限制和注意事项
范围:检查点仅捕获在活动 VJSP 任务期间所做的更改
外部更改:在任务之外进行的修改(手动编辑、其他工具)不包括在内
大文件:非常大的二进制文件可能会影响性能
未保存的工作:恢复将覆盖工作区中任何未保存的更改
技术实现
检查点架构
检查点系统包括:
影子 Git 仓库:专门为检查点跟踪创建的独立 Git 仓库,作为检查点状态的持久存储机制。
检查点服务:通过以下方式处理 Git 操作和状态管理:
仓库初始化
检查点创建和存储
差异计算
状态恢复
UI 组件:聊天中显示的界面元素,可实现与检查点的交互。
恢复过程
当执行恢复时,VJSP:
对指定的检查点提交执行硬重置
将所有文件从影子仓库复制到你的工作区
更新内部检查点跟踪状态
存储类型
检查点是任务范围的,这意味着它们特定于单个任务。
差异计算
检查点比较使用 Git 的底层差异功能生成结构化的文件差异:
修改的文件显示逐行更改
正确检测和处理二进制文件
正确跟踪重命名和移动的文件
清晰识别文件创建和删除
文件排除和忽略模式
检查点系统使用智能文件排除来仅跟踪相关文件:
内置排除
系统具有全面的内置排除模式,自动忽略:
构建工件和依赖项目录(
node_modules/、dist/、build/)媒体文件和二进制资产(图像、视频、音频)
缓存和临时文件(
.cache/、.tmp/、.bak)包含敏感信息的配置文件(
.env)大型数据文件(存档、可执行文件、二进制文件)
数据库文件和日志
这些模式在初始化期间写入影子仓库的 .git/info/exclude 文件。
.gitignore 支持
检查点系统尊重工作区中的 .gitignore 模式:
被
.gitignore排除的文件不会触发检查点创建排除的文件不会出现在检查点差异中
暂存文件更改时应用标准 Git 忽略规则
.vjspignore 行为
.vjspignore 文件(控制 AI 对文件的访问)与检查点跟踪是分开的:
被
.vjspignore排除但未被.gitignore排除的文件仍将被检查点对 AI 无法访问的文件的更改仍可通过检查点恢复
这种分离是故意的,因为 .vjspignore 限制了 AI 可以访问的文件,而不是应该跟踪版本历史的文件。
嵌套 Git 仓库
检查点系统包括对嵌套 Git 仓库的特殊处理:
在操作期间临时将嵌套的
.git目录重命名为.git_disabled操作完成后恢复它们
允许正确跟踪嵌套仓库中的文件
确保嵌套仓库保持功能正常且不受影响
并发控制
操作排队以防止可能损坏仓库状态的并发 Git 操作。这确保了即使在快速连续请求时,快速检查点操作也能安全完成。
Git 安装
检查点要求你的系统上安装 Git。该实现使用 simple-git 库,该库依赖于 Git 命令行工具来创建和管理影子仓库。
macOS
使用 Homebrew 安装(推荐):
brew install git替代方案:使用 Xcode 命令行工具安装:
xcode-select --install验证安装:
打开终端
键入
git --version你应该会看到版本号,例如
git version 2.40.0
Windows
下载适用于 Windows 的 Git:
运行安装程序:
接受许可协议
选择安装位置(推荐默认)
选择组件(默认选项通常足够)
选择默认编辑器
选择如何从命令行使用 Git(推荐:从命令行和第三方软件使用 Git)
配置行尾转换(推荐:Checkout Windows-style, commit Unix-style)
完成安装
验证安装:
打开命令提示符或 PowerShell
键入
git --version你应该会看到版本号,例如
git version 2.40.0.windows.1
Linux
UOS:
sudo apt install git -y验证安装:
打开终端
键入
git --version你应该会看到版本号
