Skip to content

99rgosse/gitlab_to_gitea

 
 

Repository files navigation

Gitlab to Gitea migration script.

This script uses the Gitlab and Gitea API's to migrate all data from Gitlab to Gitea.

This script support migrating the following data:

  • Repositories & Wiki (fork status is lost)
  • Milestones
  • Labels
  • Issues (no comments)
  • Users (no profile pictures)
  • Groups
  • Public SSH keys

Tested with Gitlab Version 13.0.6 and Gitea Version 1.11.6.

Usage

Change items in the config section of the script.

Install all dependencies via python -m pip install -r requirements.txt and use python3 to execute the script.

How to use with venv

To keep your local system clean, it might be helpful to store all Python dependencies in one folder. Python provides a virtual environment package which can be used to accomplish this task.

python3 -m venv migration-env
source migration-env/bin/activate
python3 -m pip install -r requirements.txt

Then start the migration script python3 migrate.py.

Customization

You can adapt user authentication in migrate.py line 489 Exemple if you added LDAP as authentication "must_change_password": False, # LDAP users don't have to change password "source_id": 1, # My LDAP BIND DN source number

About

Gitlab to Gitea migration script.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 99.5%
  • Dockerfile 0.5%