A tool to migrate GitHub Repositories to Gitea including all issues
gitea
github
migration
Jonas Franz afd81459b9
Fix release builds
1 week ago
cmd Fetch user if no --owner is given (#17) 1 week ago
migrations Fetch user if no --owner is given (#17) 1 week ago
.changelog.yml Add title and note to releases (#20) 1 week ago
.drone.yml Fix release builds 1 week ago
.gitignore Initial commit 3 months ago
Dockerfile Add dockerfile (#7) 3 weeks ago
Gopkg.lock Fetch user if no --owner is given (#17) 1 week ago
Gopkg.toml Add tests (#5) 2 weeks ago
LICENSE Initial commit 3 months ago
Makefile Add title and note to releases (#20) 1 week ago
README.md Add support for S3 distribution (#15) 3 weeks ago
main.go Add drone test 3 months ago

README.md

gitea-github-migrator

Build Status Latest Release Docker Pulls

A tool to migrate GitHub Repositories to Gitea including all issues, labels, milestones and comments.

Features

Migrates:

  • Repositories
  • Issues
  • Labels
  • Milestones
  • Comments
  • Users
  • Pull Requests (as issue)
  • Statuses

Installation

From source

go get git.jonasfranz.software/JonasFranzDEV/gitea-github-migrator
cd $GOPATH/src/git.jonasfranz.software/JonasFranzDEV/gitea-github-migrator
dep ensure
go install

From Binary

We provide binaries of master builds and all releases at our minio storage server.

Additionally we provide them for every release as release attachment under releases.

You don’t need any dependencies except the binary to run the migrator.

Usage

Migrate one repository:

gitea-github-migrator migrate \
    --gh-repo owner/reponame \
    --gh-token GITHUB_TOKEN \
    --url http://gitea-url.tdl \
    --token GITEA_TOKEN \
    --owner 1

gh-token is only required if you have more than 50 issues / repositories.

Migrate all repositories:

gitea-github-migrator migrate-all \
    --gh-user username \
    --gh-token GITHUB_TOKEN \
    --url http://gitea-url.tdl \
    --token GITEA_TOKEN \
    --owner 1

Migrate all repositories without issues etc. (classic):

gitea-github-migrator migrate-all \
    --gh-user username \
    --gh-token GITHUB_TOKEN \
    --url http://gitea-url.tdl \
    --token GITEA_TOKEN \
    --owner 1
    --only-repo

Problems

  • This migration tool does not work with Gitea instances using a SQLite database.
  • Comments / Issues will be added in the name of the user to whom belongs the token (information about the original date and author will be added)
  • The current date is used for creation date (information about the actual date is added in a comment)