33 lines
1.8 KiB
Markdown
33 lines
1.8 KiB
Markdown
---
|
|
description: 从 Gitea 私仓拉快照还原到本机(先自动备份)
|
|
---
|
|
|
|
用 Bash(Windows 用 git-bash)运行导入脚本。口令必须先设置(解密密钥束用):
|
|
|
|
```bash
|
|
export ZCODE_SYNC_PASSPHRASE='团队口令'
|
|
SYNC_PLUGIN="${ZCODE_SYNC_PLUGIN:-$(find ~/.zcode/plugins -maxdepth 3 -name import.mjs -path '*env-sync*' 2>/dev/null | head -1)}"
|
|
node "$SYNC_PLUGIN" [快照名] $ARGUMENTS
|
|
```
|
|
|
|
`SYNC_PLUGIN` 从本机插件目录自动定位,不写死路径。
|
|
也可以直接设 `ZCODE_SYNC_PLUGIN=/绝对/路径/import.mjs`。
|
|
|
|
- 快照名缺省用远端 `latest.json` 指向的最新快照
|
|
- 可用快照名形如 `主机名-20260911-153000`,先 `/sync-status` 看远端有哪些
|
|
- 还原前自动备份被覆盖文件到 `~/.zcode-env-sync/backup/<时间>/`,报告里给出实际路径
|
|
- 官方插件只报告差异(缺几项、分别是什么),**不自动安装**,去插件市场对照启用后重启
|
|
- 机器特有路径(host/port/command)可写 `~/.zcode-env-sync/overrides.json`(不进仓),导入自动合并
|
|
- 每人身份不同(token 各用各的)时加 `ZCODE_SYNC_SKIP_SECRETS='DSH_SECRETS/gitea-token.txt'`,
|
|
只同步连接配置不盖 token;模型密钥同理用 `MODELS/<provider>/<key>` 格式
|
|
- 模型 provider 只报告不覆盖本机 `v2/config.json`(里面有活的 apiKey);
|
|
确需应用要显式开 `ZCODE_SYNC_WITH_MODELS=1`,此时:脱敏结构合并(只增不减)、
|
|
密钥按 `MODELS/<provider>/<key>` 回填(只填空位,本机已有密钥默认跳过保护;
|
|
确需覆盖再加 `ZCODE_SYNC_OVERWRITE_MODEL_SECRETS=1`);选中态(当前用哪个模型)
|
|
默认不动,加 `ZCODE_SYNC_APPLY_MODEL_SELECTION=1` 才应用
|
|
- `ZCODE_SYNC_APPLY_OFFICIAL=0` 可跳过官方插件差异报告
|
|
|
|
**把脚本输出原样展示给用户**。失败时把报错和缺什么说清楚。
|
|
|
|
用户附加要求:$ARGUMENTS
|