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 1 年之前
cmd allow explicit GITHUB_USER and GITHUB_PASS 1 年之前
migrations Fetch user if no --owner is given (#17) 1 年之前
.changelog.yml Add title and note to releases (#20) 1 年之前
.drone.yml Fix release builds 1 年之前
.gitignore Initial commit 2 年之前
Dockerfile Add dockerfile (#7) 1 年之前
Gopkg.lock Fetch user if no --owner is given (#17) 1 年之前
Gopkg.toml Add tests (#5) 1 年之前
LICENSE Initial commit 2 年之前
Makefile Add title and note to releases (#20) 1 年之前
README.md Add support for S3 distribution (#15) 1 年之前
main.go Add drone test 2 年之前

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)