A tool to migrate GitHub Repositories to Gitea including all issues
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
jnweiger d22c74c735 allow explicit GITHUB_USER and GITHUB_PASS 11 months ago
cmd allow explicit GITHUB_USER and GITHUB_PASS 11 months ago
migrations Fetch user if no --owner is given (#17) 11 months ago
.changelog.yml Add title and note to releases (#20) 11 months ago
.drone.yml Fix release builds 11 months ago
.gitignore Initial commit 1 year ago
Dockerfile Add dockerfile (#7) 1 year ago
Gopkg.lock Fetch user if no --owner is given (#17) 11 months ago
Gopkg.toml Add tests (#5) 11 months ago
LICENSE Initial commit 1 year ago
Makefile Add title and note to releases (#20) 11 months ago
README.md Add support for S3 distribution (#15) 11 months ago
main.go Add drone test 1 year 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)