基于 Electron + Vue 3 的桌面端 Git 仓库管理工具。统一管理 GitHub / Gitee / GitCode / GitLab 等平台上的本地仓库,支持一键提交、推送、主从同步与自动更新。
当前发行版:v1.2.15
三栏布局:左侧仓库列表与搜索、中间工作区(仓库信息 / 快速提交 / 快捷操作 / 文件变更)、右侧操作日志。选中仓库后即可查看远程地址、分支、主从角色与认证方式。
点击「一键提交」等操作后,对应按钮会进入进行中状态;右侧日志实时记录进度。
提交完成后,日志输出真实提交信息,并附带文件类型摘要与行数(如 [5 修改, 2 新增] +158 -0 行)。工作区「文件变更」会随状态刷新。
按平台分别配置 SSH / Token、账户与邮箱;顶部可填写应用更新代理端口(检查或下载更新直连失败时,改用 127.0.0.1:端口 重试)。
左侧新建同步组(主仓库 + 从仓库),右侧查看已保存分组。适合同一项目在多个托管平台上的镜像同步。
| 能力 | 说明 |
|---|---|
| 多平台 | GitHub、Gitee、GitCode、GitLab、其他 |
| 认证 | SSH 私钥(推荐)或 HTTPS Token/密码;可按平台分别配置 |
| 一键提交 | 自动生成带时间戳的提交信息,统计修改/新增/删除/重命名文件数与 +/- 行数 |
| 提交并推送 | 本地提交后推送到 origin |
| 提交并同步 | 主仓库提交后,按同步组同步到从仓库并推送 |
| 批量操作 | 对多个仓库批量 push / pull / commit |
| 分支 | 创建、切换分支;查看提交日志 |
| 查看差异 | 执行 git diff,以文本弹窗展示未暂存的已跟踪文件改动 |
| 克隆 | HTTPS / SSH / 代理 URL,克隆后自动加入列表 |
| 自动更新 | 从哪安装从哪更新;可配置本地代理端口(如 Clash 7890) |
| 主题 | 浅色 / 深色 |
graph TB
A[Electron 主进程] --> P[preload IPC]
P --> B[Vue3 渲染层]
A --> C[Git 操作]
A --> D[配置管理]
A --> E[自动更新]
B --> F[仓库列表]
B --> G[工作区]
B --> H[配置 / 同步弹窗]
C --> I[simple-git]
C --> J[SSH / HTTPS]
D --> L[本地 config.json]
E --> U[electron-updater]
- 操作系统:Windows 7+(当前发行版以 Windows 安装包为主)
- Git:已安装并可用(必需)
- 开发:Node.js 18+(仅源码开发需要)
从对应平台的 Releases 下载安装包(从哪下就从哪更新):
npm install
npm run dev # Vite 热更新 + Electron
npm run build:ui # 仅构建 Vue 渲染层到 ui-dist/
npm run build # 构建 UI 并打包安装包
npm run publish # 构建并发布多平台发行版工具栏 「添加仓库」 → 选择含 .git 的文件夹。路径会写入本地配置,下次启动自动加载。
工具栏 「平台配置」:
- (可选)填写 应用更新代理端口,如
7890 - 切换平台标签(GitHub / Gitee / …)
- 选择认证方式并填写账户、邮箱
- SSH:选择私钥(勿选
.pub);未填时会尝试检测~/.ssh默认密钥 - GitHub + HTTPS 时可勾选镜像代理(如
https://ghproxy.net/)
工具栏 「同步配置」:
- 选择主仓库
- 勾选从仓库(已在其他组中的仓库会标记「已分组」)
- 保存同步组 → 底部 确定 写入配置
同步机制:
- 远程 URL 相同:对从仓库执行
git pull - 远程 URL 不同:按主仓 gitignore 规则复制应入库文件(
git ls-files,不含本地忽略的业务 Core 等),并剔除从仓误跟踪项后再推送
| 操作 | 说明 |
|---|---|
| 一键提交 | git add -A 后提交;信息含文件类型摘要与行数 |
| 提交并推送 | 提交后 git push |
| 提交并同步 | 有变更则提交;无变更也继续同步到从仓(适合拉取后) |
| 同步从仓 | 不新建提交,推送主仓当前状态并复制到从仓 |
| 拉取 / 强制拉取 | 拉取远程;强制拉取会覆盖本地冲突(慎用) |
| 推送 | 推送已有本地提交 |
| 暂存 / 恢复暂存 | stash / stash pop |
| 创建 / 切换分支 | 分支管理 |
| 查看日志 | 最近提交历史 |
| 查看差异 | git diff:仅未暂存的已跟踪文件,不含暂存区与未跟踪新文件 |
| 打开文件夹 | 在资源管理器中打开仓库目录 |
默认提交信息示例:
Update: 2026/07/23 23:59:29 [5 修改, 2 新增] +158 -0 行
输入框内为预览;真正提交时主进程会按暂存结果重新统计并写入最终信息。
工具栏 「批量」 → 选择 push / pull / commit → 勾选仓库 → 确定。
工具栏 「克隆」 → 填写 URL、平台与目标目录 → 确定。成功后自动加入列表。
- 选择私钥(
id_ed25519/id_rsa),不要选.pub - Linux/macOS:
chmod 600 ~/.ssh/id_ed25519
平台配置中的账户/邮箱会在提交时写入仓库本地 user.name / user.email。也可预先配置全局:
git config --global user.name "Your Name"
git config --global user.email "your@email.com"- 应用更新代理:平台配置顶部的端口,用于检查/下载更新(优先代理,失败再直连)
- GitHub HTTPS 镜像:仅在该平台使用密码/Token 认证且勾选代理时生效
- 推荐优先使用 SSH,推拉一般无需 HTTP 镜像
- 异远程:按主仓
.gitignore复制应入库文件;并剔除从仓「忽略但仍跟踪」的历史项 - 另跳过硬编码目录名:
.git、node_modules、.venv、dist等 - 建议先保证主仓库变更可提交再同步
推送 / 拉取失败
- 平台认证、SSH 密钥或 Token 是否有效(
ssh -T git@github.com) - Token 权限与是否过期
- 网络 / 代理是否可达
更新检查失败
- 在「平台配置」填写本地代理端口后重试
- 工具栏「清缓存」后再「检查更新」
- 确认安装包来源平台的 Release 已上传
latest.yml与安装包
克隆失败
- URL 与认证是否匹配(SSH URL 需 SSH 密钥)
- 目标目录是否已有同名文件夹
- GitHub / Gitee / GitCode 发行版各自独立,更新源不串台
- 启动后后台检查;也可手动「检查更新」
- 发现新版本 → 下载(可显示进度)→ 立即重启或稍后安装
详见 history/(如 v1.2.15)。界面截图见 docs/screenshots/。
欢迎提交 Issue 与 Pull Request。
MIT License
首次使用请先完成 平台配置(推荐 SSH),再添加仓库开始使用。




