版本控制
了解知识库的 Git 版本控制功能
版本控制
Knodo 知识库基于 Git 实现版本控制,自动记录所有更改历史。本文档介绍版本控制的使用方法。
变更面板
工作空间侧边栏的“变更”面板用于查看当前 Git 仓库的本地变更、提交历史和分支对比。

面板顶部展示当前仓库和分支,下面提供三个常用视图:
- 变更:查看工作区文件变更、未暂存数量和文件状态。
- 历史:查看当前仓库的提交历史。
- 分支对比:对比分支之间的文件差异。
变更列表包含:
- 文件状态标识:M(修改/黄色)、A(新增/绿色)、D(删除/红色)、R(重命名/蓝色)、U(未跟踪/绿色)、C(冲突/橙色)
- 点击文件名在中间面板打开 Diff 视图
- 刷新按钮手动更新变更列表
- 切换窗口焦点时自动刷新
多仓库切换
对于历史项目拆分为多个 Git 仓库的工作空间,可以在变更面板顶部切换不同仓库,查看对应仓库的本地 Git 信息。

仓库选择下拉包含:
- 搜索框:支持按仓库名称或相对路径过滤。
- 刷新按钮:重新扫描工作空间内的本地 Git 仓库。
- 主仓库:工作空间根目录仓库,只展示仓库名称,不展示
.路径。 - 已配置子仓库:来自存储管理中的子仓库配置,展示目录名和相对路径。
- 扫描到的仓库:工作空间目录中动态识别出的本地 Git 仓库,展示目录名和相对路径。
动态扫描用于发现配置之外的本地 Git 仓库,默认识别工作空间 4 层目录内的 Git 仓库。扫描结果会在仓库选择器中以“扫描到”的来源标识展示,点击刷新按钮可强制重新扫描。
选择不同仓库后,变更列表、Diff、提交历史、分支列表和分支对比都会按选中的仓库路径读取本地 Git 信息。子仓库和扫描到的仓库只展示本地 Git 信息,不显示平台托管的远程同步/推送入口。
Diff 视图
点击变更文件后,中间面板以 Tab 形式展示该文件的 Diff:
- 并排模式(Side-by-Side):左侧旧版本,右侧新版本
- 内联模式(Inline):上下排列,删除行红色背景,新增行绿色背景
- 行号显示,支持长行自动换行
- 多仓库场景下,Diff Tab 会带上仓库路径上下文,避免不同仓库中的同名文件互相覆盖
Git 基础
什么是版本控制?
版本控制是一种记录文件更改历史的系统,让您可以:
- 查看谁在何时修改了什么
- 回退到之前的版本
- 比较不同版本的差异
- 恢复误删的文件
Knodo 中的 Git
每个工作空间的知识库都是一个 Git 仓库:
- 自动提交:每次保存自动创建提交
- 自动记录:记录修改者和时间
- 透明操作:无需手动执行 Git 命令
自动版本管理
自动提交
Knodo 会在以下操作时自动创建 Git 提交:
- 保存文件时
- 上传文件时
- 删除文件时
- 重命名/移动文件时
- 批量导入文件时
提交信息格式
系统自动生成的提交信息格式:
chore(ai): 更新 docs/readme.md
chore(ai): 上传 images/logo.png
chore(ai): 删除 old-file.txt
chore(ai): 重命名 a.md 为 b.md提交前缀可通过环境变量
GIT_COMMIT_PREFIX自定义,默认为chore(ai):
提交作者信息
每次提交会记录操作用户的信息:
- 作者名称:用户的显示名称
- 作者邮箱:用户的邮箱地址
工作空间下载
您可以将整个知识库下载到本地:
- 进入工作空间
- 点击右上角的下载按钮
- 系统会将整个知识库打包为 ZIP 文件
- 下载到本地后解压即可获得完整的 Git 仓库
下载的 ZIP 包含:
- 所有文件和目录结构
- 完整的 Git 历史记录(
.git目录) - 可直接使用 Git 命令操作
技术细节
存储架构
- 存储方式:本地 Git 仓库
- 增量存储:只存储变更部分,节省空间
- 服务端托管:无需本地安装 Git
并发安全
系统使用 Git 操作队列确保并发安全:
- 多用户同时操作时按顺序执行
- 避免 Git 锁冲突
- 保证数据一致性
资源限制
- 单个文件大小限制:根据套餐不同
- 存储空间限制:根据套餐配额
- Git 历史保留:永久保留
最佳实践
1. 合理组织文件
- 使用清晰的目录结构
- 文件命名规范统一
- 避免过深的目录层级
2. 适度更新频率
- 相关更改一起保存
- 避免过于频繁的小修改
- 完成一个逻辑单元后再保存
3. 定期下载备份
- 重要知识库定期下载备份
- 保留本地副本以防万一
常见问题
Q:每次保存都会创建新版本吗?
A:是的,每次文件保存都会创建一个新的 Git 提交,记录变更内容、时间和操作者。
Q:历史记录会永久保存吗?
A:是的,Git 历史记录会永久保留在知识库中。
Q:可以手动创建提交吗?
A:目前不支持手动创建提交,所有提交由系统自动生成。
Q:多人同时编辑会冲突吗?
A:系统通过操作队列保证顺序执行,避免并发冲突。
Q:下载的知识库可以用 Git 操作吗?
A:可以。下载的 ZIP 包含完整的 .git 目录,解压后可使用任何 Git 命令进行操作。
Q:二进制文件支持版本控制吗?
A:支持,但二进制文件无法进行差异对比,只能整体回滚。