いうていけろ

hideo54のブログ

トップページ
技術

Redmineでプロジェクトの識別子を変更する

2015年6月30日

この記事は最終更新から半年以上経過しており、内容が古い可能性があります。

Redmine

Redmine で一度建てたプロジェクトは、識別子を変更できない。 しかし、適当に識別子をつけた後しばらくすると、やっぱ変えたいとなることがたまにある。 今回、どうしても識別子を変更したい案件があったので、変更することにした。

以下は Debian での話 (関係ないと思うが)。なお、管理者権限が要る。 また、ある親プロジェクトの子プロジェクトなら、念のため変更前に一旦独立させておいた方が良いと思う (そのあたりは検証していない)。

(デフォルト設定でインストールしてあれば) redmine_default データベースの中の projects テーブルに、識別子含む各プロジェクトのデータが入っている。

$ mysql -u root -p
Enter Password:
mysql> USE redmine_default;
mysql> SELECT * FROM projects

まず、表示された projects テーブルの中身を見て、変更したいプロジェクトの id (連番で勝手に振られている) を確認する。

{after} を変更後の識別子、{num} を上で確認した id とする。このとき、次の SQL を実行することで変更できる。

mysql> UPDATE projects SET identifier="{after}" WHERE id={num};
Query OK, 1 row affected (0.01 sec)
Rows matched: 1  Changed: 1  Warnings: 0
mysql> exit
Bye

これで変更されたことを確認すれば良い。

  • 直接データベースを書き換えるという荒業なので、これでバグらないとも限らない。自己責任でお願いします。
  • 変更したプロジェクトのチケットや wiki などの URL が全て変わることにも注意。