GitHub / Gitee / GitLab / Gitea 同步配置
为什么用 Git 同步
Git 同步是 NoteGen 最常用的多设备同步方式:
- 免费——GitHub/Gitee/GitLab/Gitea 私有仓库都免费
- 可靠——Git 的版本控制天然适合追踪变更
- 历史可回溯——每次同步都是一次 commit,出问题能回滚
- 不依赖 NoteGen 服务器——数据完全在你和 Git 平台之间
四种平台对比
| 维度 | GitHub | Gitee | GitLab | Gitea |
|---|---|---|---|---|
| 私有仓库 | ✅ 免费 | ✅ 免费 | ✅ 免费 | ✅ 免费 |
| 自建实例 | ❌ | ❌ | ✅ | ✅ |
| 国内访问 | 可能慢 | 快 | 一般 | 自建可控 |
| API 权限 | Fine-grained PAT | scope 级 PAT | api scope | scope 级 PAT |
GitHub 配置
Step 1:创建 Token
GitHub → Settings → Developer settings → Personal access tokens → Fine-grained tokens → Generate new token:
- 仓库访问:选"Only select repositories" → 选你的笔记仓库
- 权限:Contents(Read and write)
- 如果让 NoteGen 自动创建仓库,还需要 Administration(Read and write)
Step 2:在 NoteGen 配置
设置 → 同步配置 → 选择 GitHub:
- 填入 Token
- 填入仓库名(格式:
owner/repo,如codexu/my-notes) - 填入分支(默认
main) - 保存后点"测试连接"
- 连接成功后选择同步对象和自动同步策略
Gitee 配置
Gitee 的 PAT 创建路径:个人中心 → 私人令牌 → 生成新令牌。
需要的 scope:user_info(读取用户信息)、projects(操作仓库)。
GitLab 配置
GitLab 用 Classic Personal Access Token,scope 选 api(最简化方式)。GitLab 支持自建实例——如果是自建的,在 NoteGen 里要填你的 GitLab 实例 URL。
Gitea 配置
Gitea(包括 Forgejo、Gogs 等兼容服务)可以是官方的也可以自建。创建 Token 时 scope 选 read:user + write:repository。旧版本 Gitea 可能只能选 all scope。
同步对象
配置同步后可以选择同步哪些内容:
| 对象 | 说明 | 默认 |
|---|---|---|
| Markdown 与资源 | 工作区的 .md 文件和图片 | ✅ 同步 |
| 记录/标签/聊天/画布 | 结构化数据 | ✅ 同步 |
| 个人附件 | 独立的附件目录 | 可选 |
| 偏好设置 | 界面主题等 | 可选 |
| 敏感配置 | Token/密码/图床/MCP | 默认不同步 |
多仓库映射
Git 平台可以为不同的本地工作区配置独立仓库。切换工作区后检查当前仓库映射,避免把两套目录推到同一个远程路径。
常见问题
同步一直显示"连接中":
- 检查 Token 是否正确
- 检查仓库名格式
- 检查网络(GitHub 在国内可能需要代理)
- 检查分支是否存在
推送到远程失败:
- 可能远程有新提交你还没拉取——先拉取再推送
- 可能 Token 过期——重新生成
不想同步 .obsidian / .vscode 等无关目录:Git 仓库里加 .gitignore。