Skip to content

GitRepoMirror v1.5

Latest

Choose a tag to compare

@DerekWangHUZ DerekWangHUZ released this 08 Oct 11:47

GitRepoMirror v1.5

v1.5 修复 GitLab 源镜像推送到 GitHub 时因凭据 helper 被清空而失败的问题。

修复与改进

  • 修复 GitLab HTTPS 镜像推送到 GitHub 时报 could not read Username for 'https://github.com': terminal prompts disabled 并以退出码 128 结束的问题
  • 原因是一次同步的拉取与推送共用同一份 Git 环境:复用 glab 凭据时会先清空全部 credential helper,再只挂回 GitLab 的 helper;清空之后 GitHub 侧没有任何 helper,而应用按设计禁用了交互式凭据提示
  • 现在清空之后会同时挂回 GitLab 与 GitHub 的 helper(分别复用本机 glab auth git-credential 与 gh auth git-credential),GIT_CONFIG_COUNT 与键值对数量始终一致
  • gh 与 glab 一样先经 findExecutable 定位并把所在目录前置到 PATH;未安装 gh 时不注入 GitHub 键值对,保持原有行为
  • 应用仍不写入任何全局 Git 配置,不保存平台 token

验证

  • go test ./... 通过
  • go vet ./... 通过
  • 新增回归测试:GitLab 源 + GitHub 目标场景断言注入 credential.https://github.com.helper 且 GIT_CONFIG_COUNT 与键值对数量一致
  • 新增缺失 gh、缺失 glab、gh 已在 PATH 时不重复追加目录的测试,以及用真实 git config --get-all 验证该环境被 Git 接受的测试

安装

下载 GitRepoMirror-v1.5-windows-amd64.exe 后直接运行。

运行需要 Windows 10/11 x64、Git 和 Microsoft Edge WebView2 Runtime。根据需要安装 GitHub CLI gh、GitLab CLI glab 和 Git LFS。GitLab 源镜像到 GitHub 需要本机 gh 已登录。

校验

SHA-256:4113F28943370F630D56DDB0757460D0C79F2E5A6A8356EB2F432601B417804A

完整变更见 CHANGELOG.md,常见问题见 故障排查。