dHR-P/dsh-git-sync
dHR-P★ 0JavaScript最后同步: 2026-08-16
Git-based multi-device sync for the DSH web GUI: workspace conversation/file sync plus preset/plugin manifests
README 摘要
dsh-git-sync 利用 git 实现 DSH 多端同步:工作区 对话 与 文件 双向同步( 仅对话 / 全部文件 两种模式),并为预设/插件清单同步预留中央仓库绑定。 功能 - 设置卡片 (设置 → 插件配置区 → Git 同步):绑定中央仓库、逐工作区配置同步方案(模式/远程/分支/逻辑名)、推送/拉取/状态 - 仅对话模式 :只同步 /.dsh/sessions/ / 的会话日志到仓库 .dsh-sync/ / , 不碰工作区文件 (适合本机强依赖工作区,他机只读查看) - 全部文件模式 : git add -A 整仓同步(适合纯开发工作区跨设备续接) - 跨设备路径无关 (仅对话模式):镜像目录用 逻辑工作区名 (配置 name ,缺省取远程仓库名),不依赖本地绝对路径;新设备拉取时自动把每个会话 header 的 cwd 改写为本机路径 ,DSH 重新识别后即可续接 - 新设备一键接入 :登录 GitHub 后,「新设备:克隆工作区」输入本机路径 + 选择仓库 → 克隆、注册工作区、拉取并改写会话路径 - 凭据安全 :复用系统 git 凭据(SSH key / 凭据管理器 / PAT),插件不存储任何密钥;配置 /.dsh/.git-sync.yaml 不含敏感信息 安装 重启 dsh web ,设置页插件区出现「Git 同步」卡片。 使用 1. 设置 → 插件配置区 → Git 同步 2. 每个工作区:选模式(仅对话/全部文件)→ 填远程仓库 URL → 保存;如需自定义跨设备镜像目录名,填「逻辑名」(缺省取远程仓库名) 3. 点「推送」上传本地会话/文件,点「拉取」下载远端内容 4. 仅对话模式拉取到的新会话需 重启 DSH 后出现在侧栏 新设备接入(跨设备续接) 1. 新设备装好插件并登录 GitHub 2. 设置 → Git 同步 → 「新设备:克隆工作区」:填本机目标路径(须为空/不存在)+ 选仓库 → 克隆并拉取会话 3. 重启 DSH → 会话出现在侧栏,可续接 说明:会话文件存于 /.dsh/sessions/ / ,DSH 校验文件路径与 header 的 cwd 一致。插件拉取时把镜像里的会话 header cwd 改写为本机路径并放到对应 projectKey 目录,所以不同设备路径不同也能续接。历史对话里已写入的绝对路径引用(如工具调用传的文件路径)仍指向原设备,无法自动改写。 注意事项 - 私有仓库 :对话含敏感内容,远程仓库必须私有 - 跨设备路径 : 仅对话 模式不受路径影响(镜像按逻辑名存、拉取改写 header); 全部文件 模式按 git 相对路径同步,克隆到任意目录即可 - 并发 :同一时刻仅一台设备续接同一工作区,避免会话文件冲突 - 会话按工作区存于 /.dsh/sessions/ / ,DSH 启动…
在 GitHub 查看完整 README →