-
Notifications
You must be signed in to change notification settings - Fork 0
Hosting Connections
TriForge 0.5.0 支持 GitHub、GitLab、Gitea。可以同时连接三个平台,也可以为同一种平台保存多个实例或账号,只要“平台 + 实例 URL + 用户名”组合不重复。
公开元数据:
- 稳定连接 ID;
- 平台种类;
- 显示名称;
- 实例首页 URL;
- 验证后取得的用户名。
敏感数据:
- Personal Access Token,仅存入 VS Code SecretStorage。
Token 不会出现在连接对象、settings.json、remote URL、仓库配置、输出日志或错误信息中。
入口任选其一:
- “分支、更改与远程” → “托管平台” → “添加连接”;
- 视图标题的插头按钮;
- 命令面板 → “TriForge Git: 连接 GitHub / GitLab / Gitea”。
步骤:
- 选择平台。
- 输入实例首页 URL,不要输入 API 端点。
- 输入 Token。
- TriForge 规范化 URL 并调用平台
/userAPI。 - 验证成功后保存实际用户名和 Token。
默认地址:
| 平台 | 首页 URL | TriForge 推导的 API 根地址 |
|---|---|---|
| GitHub | https://github.com |
https://api.github.com |
| GitLab | https://gitlab.com |
https://gitlab.com/api/v4 |
| Gitea | https://gitea.com |
https://gitea.com/api/v1 |
自建实例可以带路径前缀,例如 https://code.example.com/gitea。详见 自建实例。
输入 http:// 地址时会出现模态警告。继续意味着 Token 和 Git 内容可能被同一网络中的其他人截获。除隔离的本机测试环境外,应使用有效 HTTPS。
点击托管平台连接行右侧编辑图标,或运行“修改托管平台连接”。流程有三步:
- 修改显示名称;
- 修改实例首页 URL;
- 确认 Token。
如果 URL 没变化,Token 输入框留空会继续使用现有 Token;输入新内容则替换 Token。
如果 URL 发生变化,必须输入新 Token。TriForge 不会把旧 Token 静默发送给另一台服务器,即使新旧地址属于同一种平台。
保存前会再次调用新配置的 /user API。验证失败时不会用未验证数据替换原连接。
点击连接行右侧删除图标或运行“断开远程实例”。确认后:
- 删除连接元数据;
- 删除该连接在 SecretStorage 中的 Token;
- 刷新三个 TriForge 视图。
不会自动:
- 删除项目
.git/config中的 remote; - 删除本地分支或提交;
- 删除远程平台上的仓库;
- 撤销已经完成的 Push。
这是有意区分“平台凭据管理”和“仓库远程配置”。
可以添加:
- GitHub 个人账号 A 与账号 B;
- GitLab.com 与公司自建 GitLab;
- 多个自建 Gitea;
- GitHub.com 与 GitHub Enterprise Server。
建议给连接使用一眼可辨的显示名称,例如:
GitHub · 个人
GitLab · 公司
Gitea · 家庭服务器
同步推送的勾选框按“连接”工作,不只是按平台工作。因此两个 GitLab 连接会显示为两个独立目标。
Fetch/Pull/Push 前,TriForge会把 remote 的 HTTPS URL 与连接实例进行严格匹配:
- 主机名必须一致;
- 自建实例路径前缀必须一致;
- 不接受 URL 中嵌入凭据;
- SSH、SCP 和自定义 remote helper 不会获得平台 PAT。
若一个 remote 没有任何安全匹配的连接,Git 可能使用本机已有 credential helper,或者在非交互模式下认证失败。连接成功不代表所有任意 remote 都会自动拿到 Token。
TriForge 只控制自己发起的 Git 子进程。以下入口属于不同认证路径:
- VS Code 内置源代码管理器的 Push/Pull;
- 终端中手动执行
git push; - 第三方 Git 扩展;
- SSH remote。
它们可能调用 Git Credential Manager、Keychain、SSH Agent 或其他 helper。TriForge 连接过平台并不等于全局修改这些工具的登录状态。
0.5.0 尚未把连接元数据加入 VS Code Settings Sync。即使以后选择同步非敏感元数据,SecretStorage 中的 Token 按 VS Code 设计也不会跨机器同步。
换电脑时应:
- 安装同一扩展 ID;
- 重新添加或恢复连接元数据;
- 在新设备上重新输入每个平台 Token;
- 重新克隆仓库或检查已有
.git/config。
不要为了同步而把 Token 加密后写进 settings.json。如果解密密钥也能自动同步,就无法形成真正的安全边界。
继续阅读:Token 权限。
当前文档对应 TriForge Git 0.5.1。