Migrate your projects from Redmine to Backlog. (英語の下に日本文が記載されています)
Backlog Migration for Redmine is in beta. To avoid problems, create a new project and import data before importing data to the existing project in Backlog.
https://github.com/nulab/BacklogMigration-Redmine/releases
Please download the jar file from this link, and run from the command line as follows.
https://github.com/nulab/BacklogMigration-Redmine/releases
java -jar backlog-migration-redmine-[latest version].jar
To use via proxy server, run from the command line as follows.
java -Djdk.http.auth.tunneling.disabledSchemes= -Dhttps.proxyHost=[proxy host name] -Dhttps.proxyPort=[proxy port] -Dhttps.proxyUser=[proxy user] -Dhttps.proxyPassword=[proxy password] -jar backlog-migration-redmine-[latest version].jar
Create a directory.
$ mkdir work
$ cd work
Run the [init] command to prepare the mapping file. (The mapping file is used to link data between Backlog and Redmine.)
java -jar backlog-migration-redmine-[latest version].jar \
init \
--redmine.key [Redmine API key] \
--redmine.url [Redmine of URL] \
--backlog.key [Backlog of API key] \
--backlog.url [URL of Backlog] \
--projectKey [Redmine project identifier]:[Backlog project key]
Sample commands:
java -jar backlog-migration-redmine-[latest version].jar \
init \
--redmine.key XXXXXXXXXXXXX \
--redmine.url https://my.redmine \
--backlog.key XXXXXXXXXXXXX \
--backlog.url https://nulab.backlog.jp \
--projectKey redmine_project:BACKLOG_PROJECT
The mapping file is created as follows.
.
├── log
│ ├── backlog-migration-redmine-warn.log
│ └── backlog-migration-redmine.log
└── mapping
├── priorities.csv
├── priorities_list.csv
├── statuses.csv
├── statuses_list.csv
├── users.csv
└── users_list.csv
[--exclude] If you set this property, specified initialize will not be run by the program.
java -jar backlog-migration-redmine-[latest version].jar \
init \
--redmine.key [Redmine API key] \
--redmine.url [Redmine of URL] \
--backlog.key [Backlog of API key] \
--backlog.url [URL of Backlog] \
--projects [Redmine project identifier]: [Backlog project key] \
--exclude [wiki]
Specify the destination project for --projectKey option by colon (:). i.e. [--projectKey redmine_project:BACKLOG_PROJECT] migrates redmine_project redmine project in BACKLOG_PROJECT backlog project.
--projectKey [Redmine project identifier]:[Backlog project key]
A file in CSV format will be automatically created. The right side is Backlog item. For the assignable items from Name column, please refer to the following file by reference
Run the [execute] command to import data.
java -jar backlog-migration-redmine-[latest version].jar \
execute \
--redmine.key [Redmine API key] \
--redmine.url [Redmine of URL]
--backlog.key [Backlog of API key] \
--backlog.url [URL of Backlog] \
--projectKey [Redmine project identifier]:[Backlog project key]
Sample commands:
java -jar backlog-migration-redmine-[latest version].jar \
execute \
--redmine.key XXXXXXXXXXXXX \
--redmine.url https: //my.redmine \
--backlog.key XXXXXXXXXXXXX \
--backlog.url https://nulab.backlog.jp \
--projectKey redmine_project:BACKLOG_PROJECT
When import has been completed, the directory will be created and data file that has been used for importing will be produced.
.
├── log
│ ├── backlog-migration-redmine-warn.log
│ └── backlog-migration-redmine.log
[--importOnly] If you set this property, only import will be run by the program.
java -jar backlog-migration-redmine-[latest version].jar \
execute \
--redmine.key [Redmine API key] \
--redmine.url [Redmine of URL] \
--backlog.key [Backlog of API key] \
--backlog.url [URL of Backlog] \
--projects [Redmine project identifier]: [Backlog project key] \
--importOnly
[--exclude] If you set this property, specified import will not be run by the program.
java -jar backlog-migration-redmine-[latest version].jar \
execute \
--redmine.key [Redmine API key] \
--redmine.url [Redmine of URL] \
--backlog.key [Backlog of API key] \
--backlog.url [URL of Backlog] \
--projects [Redmine project identifier]: [Backlog project key] \
--exclude [issue or wiki]
[--retryCount] Setting this property allows you to specify the number of retries when a network error occurs.
java -jar backlog-migration-redmine-[latest version].jar \
execute \
--redmine.key [Redmine API key] \
--redmine.url [Redmine of URL] \
--backlog.key [Backlog of API key] \
--backlog.url [URL of Backlog] \
--projects [Redmine project identifier]: [Backlog project key] \
--retryCount [Number of retries]
Redmine 1.1.1 or later are supported.
This program is for the users with the Space's administrator roles.
Only applied to Premium or Platina plan.
Hyphen → underscore
Single-byte lowercase character → Single-byte uppercase character
Following items cannot be migrated
If an Issue was created with a status other than "New" and then there was no change to this status before importing it, the Issues status in Backlog will be set to "Open".
Projects with custom fields are supported only for Redmine 2.4 and later.
Resource | Availability |
---|---|
Issue | 1.1 |
Project | 1.1 |
Project member | 1.4 |
News | 1.1 |
Version | 1.3 |
Wiki | 2.2 |
Attachment | 1.3 |
Issue status | 1.3 |
Tracker | 1.3 |
Category | 1.3 |
Group | 2.1 |
Custom field | 2.4 |
Priority | 2.2 |
When the project key in Backlog and Redmine matches, they will be considered as the same project and data will be imported as follows.
If the person migrating data is not in the project.
The project will not be imported and the following message will be shown. Join the project to migrate data. Importing to this project failed. You are not a member of this project. Join the project to add issues.
Item | Specifications |
---|---|
Group | The group will not be added when there is a group with same name. |
Project | The project will not be added when there is a project with same project key. The issues and wikis will be added to the existing project. |
Issues | Issues with matching subject, creator, creation date are not registered. |
Wiki | The wiki will be not added when there is a wiki with same name. |
Custom fields | The custom field will not be added when there is a custom field with same name. |
MIT License
Please contact us if you encounter any problems during the Redmine to Backlog migration.
https://www.backlog.jp/contact/
Redmine のプロジェクトをBacklogに移行するためのツールです。
Backlog Migration for Redmine はベータバージョンです。Backlog 上の既存プロジェクトにインポートする場合は、先に新しく別プロジェクトを作成し、こちらにインポートし内容を確認後。正式なプロジェクトにインポートしてください
https://github.com/nulab/BacklogMigration-Redmine/releases
こちらのリンクから jar ファイルをダウンロードし、以下のようにコマンドラインから実行します。
https://github.com/nulab/BacklogMigration-Redmine/releases
java -jar backlog-migration-redmine-[最新バージョン].jar
プロキシ経由で使用する場合は、以下のように実行します。
java -Djdk.http.auth.tunneling.disabledSchemes= -Dhttps.proxyHost=[プロキシサーバのホスト名] -Dhttps.proxyPort=[プロキシサーバのポート番号] -Dhttps.proxyUser=[プロキシユーザー名] -Dhttps.proxyPassword=[プロキシパスワード] -jar backlog-migration-redmine-[最新バージョン].jar
作業用のディレクトリを作成します。
$ mkdir work
$ cd work
[init]コマンドを実行し、マッピングファイルを準備する必要があります。 (マッピングファイルは Redmine と Backlog のデータを対応付けるために使用します。)
java -jar backlog-migration-redmine-[最新バージョン].jar \
init \
--redmine.key [RedmineのAPIキー] \
--redmine.url [RedmineのURL] \
--backlog.key [BacklogのAPIキー] \
--backlog.url [BacklogのURL] \
--projectKey [Redmineプロジェクト識別子]:[Backlogプロジェクトキー]
サンプルコマンド:
java -jar backlog-migration-redmine-[latest version].jar \
init \
--redmine.key XXXXXXXXXXXXX \
--redmine.url https://my.redmine \
--backlog.key XXXXXXXXXXXXX \
--backlog.url https://nulab.backlog.jp \
--projectKey redmine_project:BACKLOG_PROJECT
以下のようにマッピングファイルが作成されます。
.
├── log
│ ├── backlog-migration-redmine-warn.log
│ └── backlog-migration-redmine.log
└── mapping
├── priorities.csv
├── priorities_list.csv
├── statuses.csv
├── statuses_list.csv
├── users.csv
└── users_list.csv
[--exclude]オプションを利用すると指定された項目を除外してインポートを実行します。
java -jar backlog-migration-redmine-[最新バージョン].jar \
init \
--redmine.key [RedmineのAPIキー] \
--redmine.url [RedmineのURL] \
--backlog.key [BacklogのAPIキー] \
--backlog.url [BacklogのURL] \
--projectKey [Redmineプロジェクト識別子]:[Backlogプロジェクトキー] \
--exclude [wiki]
--projectKey オプションに以下のようにコロン [:] 区切りでプロジェクトを指定することで、Backlog 側の移行先のプロジェクトを指定することができます。
--projectKey [Redmineのプロジェクト識別子]:[Backlogのプロジェクトキー]
自動作成されるファイルは以下のように CSV 形式で出力されます。 Backlog 側の空白の項目は自動設定できなかった項目になります。 以下のファイルから Name 列の項目をコピーして、空白を埋める必要が有ります。
[execute]コマンドを実行することでインポートを実行します。
java -jar backlog-migration-redmine-[最新バージョン].jar \
execute \
--redmine.key [RedmineのAPIキー] \
--redmine.url [RedmineのURL] \
--backlog.key [BacklogのAPIキー] \
--backlog.url [BacklogのURL] \
--projectKey [Redmineプロジェクト識別子]:[Backlogプロジェクトキー]
サンプルコマンド:
java -jar backlog-migration-redmine-[latest version].jar \
execute \
--redmine.key XXXXXXXXXXXXX \
--redmine.url https://my.redmine \
--backlog.key XXXXXXXXXXXXX \
--backlog.url https://nulab.backlog.jp \
--projectKey redmine_project:BACKLOG_PROJECT
インポートが完了すると以下のようにディレクトリが作成され インポートに使用されたデータファイルが出力されます。
.
├── log
│ ├── backlog-migration-redmine-warn.log
│ └── backlog-migration-redmine.log
[--importOnly]オプションを利用すると前回出力したファイルからインポートのみ実行します。
java -jar backlog-migration-redmine-[最新バージョン].jar \
execute \
--redmine.key [RedmineのAPIキー] \
--redmine.url [RedmineのURL] \
--backlog.key [BacklogのAPIキー] \
--backlog.url [BacklogのURL] \
--projectKey [Redmineプロジェクト識別子]:[Backlogプロジェクトキー] \
--importOnly
[--exclude]オプションを利用すると指定された項目を除外してインポートを実行します。
java -jar backlog-migration-redmine-[最新バージョン].jar \
execute \
--redmine.key [RedmineのAPIキー] \
--redmine.url [RedmineのURL] \
--backlog.key [BacklogのAPIキー] \
--backlog.url [BacklogのURL] \
--projectKey [Redmineプロジェクト識別子]:[Backlogプロジェクトキー] \
--exclude [issue または wiki]
[--retryCount]オプションを利用すると、ネットワークエラー等が発生したときに再試行する回数を指定できます。
java -jar backlog-migration-redmine-[最新バージョン].jar \
execute \
--redmine.key [RedmineのAPIキー] \
--redmine.url [RedmineのURL] \
--backlog.key [BacklogのAPIキー] \
--backlog.url [BacklogのURL] \
--projectKey [Redmineプロジェクト識別子]:[Backlogプロジェクトキー] \
--retryCount [再試行する回数]
Redmine の対応バージョンは 1.1.1 以降 になります。
Backlog の 管理者権限 が必要になります。
Backlog で プレミアムプラン以上 のプランを契約している必要があります。
ハイフン → アンダースコア
半角英子文字 → 半角英大文字
以下の項目は移行できません
課題追加時に「新規」以外のステータスを設定し、その後ステータスが変更されなかった場合は「未処理」に設定されます。
カスタムフィールドが含まれるプロジェクトは Redmine 2.4 以降のみ対応しています。
Resource | Availability |
---|---|
課題 | 1.1 |
プロジェクト | 1.1 |
プロジェクトメンバー | 1.4 |
ニュース | 1.1 |
バージョン | 1.3 |
Wiki | 2.2 |
添付ファイル | 1.3 |
課題ステータス | 1.3 |
トラッカー | 1.3 |
カテゴリー | 1.3 |
グループ | 2.1 |
カスタムフィールド | 2.4 |
優先度 | 2.2 |
Backlog 側に Redmine に対応するプロジェクトキーがある場合同一プロジェクトとみなし、以下の仕様でインポートされます。
※ 対象のプロジェクトに 参加していない場合
対象プロジェクトはインポートされず以下のメッセージが表示されます。対象プロジェクトをインポートする場合は、対象プロジェクトに参加してください。[⭕️⭕️ を移行しようとしましたが ⭕️⭕️ に参加していません。移行したい場合は ⭕️⭕️ に参加してください。]
項目 | 仕様 |
---|---|
グループ | 同じグループ名のグループがある場合、同一とみなし登録しません。 |
プロジェクト | 同じプロジェクトキーのプロジェクトがある場合、プロジェクトを作成せず対象のプロジェクトに課題や Wiki を登録します。 |
課題 | 件名、作成者、作成日が一致する課題は登録されません。 |
Wiki | 同じページ名の Wiki がある場合登録しません。 |
カスタム属性 | 同じ名前のカスタム属性がある場合登録しません。 |
MIT License
お問い合わせは下記サイトからご連絡ください。