Skip to content

CokeSR/Gitlab-Migration

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GitLab Migration

一个基于 TypeScript 的自动化迁移脚本,用于将 GitLab 上的仓库(含群组)批量完整的迁移到 Gitea。


环境要求

  • Node.js >= 20
  • Git 已安装
  • Gitea / GitLab 可访问且已经获取到足够权限的 ACCESS_TOKEN

运行

npm install
# 查询 gitlab 中的仓库和组织并在 gitea 中创建(你可能会执行多次,因为有可能gitea服务堵塞了,一直执行到仓库全部存在即可)
npm run create
# 尝试将 gitlab 中的仓库和组织导入 gitea 中(同上)
npm run mirror

环境配置

  • 在使用前注意核对 gitlab api 版本为 v4,gitea api 版本为 v1
# .env
GITLAB_ACCESS_KEY=your_gitlab_token
GITEA_ACCESS_KEY=your_gitea_token

GITEA_USERNAME=Coke
GITLAB_USERNAME=Coke

GITLAB_BASE_URL=http://localhost.com      # 纯地址,不含路径
GITEA_BASE_URL=http://localhost:3000    # 纯地址,不含路径

其他说明

  1. 创建组织和仓库都有并发次数限制为 3,上传仓库的并发限制为 3
  2. 一定要预留一部分空间用于存 mirror 文件(>=你的gitlab仓库容量)
  3. 如果是第一次迁移,则gitea可能会弹出授权按钮确认,不要忘记了;如果出现了授权失败,就重新启动一遍
  4. 如果有一部分迁移失败或者创建失败,就多跑几遍

About

将 GitLab 上的仓库(含群组)批量完整的迁移到 Gitea

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors