【Windows環境構築】RedmineとSubversionの連携方法とメリットを徹底解説!プロジェクト管理と品質管理を効果的に遂行する方法

【Windows環境構築】RedmineとSubversionの連携方法とメリットを徹底解説!プロジェクト管理と品質管理を効果的に遂行する方法

RedmineSubversionの連携は、プロジェクト管理と品質管理を効果的に遂行するための重要な手法です。

Redmineはオープンソースのプロジェクト管理ソフトウェアであり、チームでのタスク管理や情報共有をサポートします。一方、Subversionはオープンソースのバージョン管理ソフトウェアであり、ファイルの変更履歴の管理や共同作業を円滑に行うことができます。

この記事では

  • RedmineとSubversionを連携するメリット
  • RedmineとSubversionを連携させる方法

について順にご紹介します。

【Windows環境構築】RedmineとSubversionの連携方法とメリットを徹底解説!プロジェクト管理と品質管理を効果的に遂行する方法
しらかば堂

こんにちは しらかば堂です。
RedmineとSubversionを連携し、あなたやあなたの開発チームの生産性を爆上げしましょう

RedmineとSubversionを連携するメリット

普段必要な操作は作業PC内でのTortoiseSVNを使ったコミットのみ

【Windows環境構築】RedmineとSubversionの連携方法とメリットを徹底解説!プロジェクト管理と品質管理を効果的に遂行する方法

例えば向かって一番左の Windows10 搭載PCでソフトウエアのソースコードの開発をしていたとして、その変更をSubversion Client (TortoiseSVN)を使い

refs #xxxx (#xxxx はRedmine 内のチケット番号)

というおまじないを含むコメントをつけてコミットすると、この変更が自動的に右から2番めのWindows 2019 Server Essential 搭載PC上のSubversion Server(VisualSVN)配下のリポジトリに保存されます。

さらにそのコメントは1番右のWindows 10上のRedmine Server 内のRedmine Serverから参照できるようになります。

【Windows環境構築】Subversion のクライアント TortoiseSVN 環境を整え 開発効率を爆上げしよう

問題(チケット)配下のリポジトリ修正履歴が参照可能

以下はこの関連記事の後半でSubversion Client (TortoiseSVN)の操作方法を説明するために行ったコミット操作に関連した、Redmine Server内の#385 番の課題(チケット)の連続したページの上下ですが

【Windows環境構築】RedmineとSubversionの連携方法とメリットを徹底解説!プロジェクト管理と品質管理を効果的に遂行する方法
Redmine 内の #385 チケットの上部
【Windows環境構築】RedmineとSubversionの連携方法とメリットを徹底解説!プロジェクト管理と品質管理を効果的に遂行する方法
Redmine 内の #385 チケットの下部(「関係しているリビジョン」タブ内の表示内容)

この赤枠で囲った部分に

リビジョン 54(差分)
20230507 Deploy.bat の15行目の先頭を大文字に変更 refs #385


という記載がありますね。

この記載は 先ほどの記事中でSubversion Client (TortoiseSVN)を使って行ったコミット作業の際に入力したコメントそのものです。

つまり作業PCの上でSubversion Client (TortoiseSVN)でコミット操作を実施すると、Redmine Serverでこの修正情報を関連する課題(チケット)に紐付け参照できるようになります。

そしてこのコミット操作履歴は、この課題(チケット)内の後半部分にコミット操作毎に

  • ビジョン番号
  • コミット操作の際に入力した修正内容を表すコメント
  • 変更日時

がセットで自動的に追記されるので、この課題(チケット)に紐づいて行われたソフトウエアのソースコード修正を任意のタイミングで一覧表示できるというわけです。

問題(チケット)配下のリポジトリのリビジョン間差分表示が可能

【Windows環境構築】RedmineとSubversionの連携方法とメリットを徹底解説!プロジェクト管理と品質管理を効果的に遂行する方法
しらかば堂

では実際の変更内容はどうなっているのでしょうか

続いて同じく赤線で囲まれた部分にある 差分 というリンクをクリックすると
次のように変更前が左側、変更後が右側という画面構成の中で赤、緑でハイライトされて変更部分をRedmine内で見ることが出来ます。

【Windows環境構築】RedmineとSubversionの連携方法とメリットを徹底解説!プロジェクト管理と品質管理を効果的に遂行する方法

これにより、このリビジョン54 では、0385/Remove.bat の15行目の最初の文字が小文字の’p’から大文字の’P’に修正されていることがわかります。

【Windows環境構築】RedmineとSubversionの連携方法とメリットを徹底解説!プロジェクト管理と品質管理を効果的に遂行する方法
しらかば堂

これって凄いと思いませんか?

実際のソースコード修正者は
一番左の Windows10 搭載PCでSubversion Client (TortoiseSVN)でコミット操作しただけですが

この課題(チケット)に関心のある修正者本人、およびそのチームメンバもRedmine Serverへアクセスするだけでこの課題(チケット)に関連した変更内容を何時でも知ることができるんです。

このRedmine の詳細については以下の参考図書が読みやすくてお勧めです。

RedmineとSubversionの連携のやり方

RedmineとSubversion の連携環境

【Windows環境構築】RedmineとSubversionの連携方法とメリットを徹底解説!プロジェクト管理と品質管理を効果的に遂行する方法

まずこちらをご覧ください。

この図はしらかば堂の自宅内のワークスペース環境で

  • Redmine Server
  • Subversion Server(VisualSVN)
  • Subversion Client(TortoiseSVN)

のインストールされているWindows 10 搭載PCWindows 2019 Server Essentials 搭載PCの配置、接続関係を図示したものです。

役割分担を明確にする為に分離して表現していますが Redmine Server がインストールされいるWindows 10 搭載PC(192.168.aaa.10)とTortoiseSVN がインストールされているWindows 10 搭載PC(192.168.aaa.1x)は同一PCです。

 

Redmin Server をインストールする

まず導入環境にRedmine Server がインストールされている必要があります。もしまだ Redmine Server がインストールされていない場合には以下の記事を参考にまずRedmine Server をターゲットPCにインストールしましょう。

【Windows環境設定】プロジェクト管理ツール Redmine を自宅内 PCに導入する

Subversion Server をインストールする

次に導入環境にSubversion Server がインストールされている必要があります。もしまだ Subversion Server がインストールされていない場合には以下の記事を参考にまずSubversion Server をターゲットPCにインストールしましょう。

【Windows 環境構築】共同作業がスムーズになる!自宅、会社のワークスペースで Subversion を使ってみよう

Subversion Client(Tortoise) をインストールする

さらに Redmine Server は、Subversion Server のリポジトリにアクセスする際、同PC内にさらにSubversion Client(Tortoise)に含まれるSubversionモジュールを必要とします。

従ってまだ Subversion Client(Tortoise)がインストールされていない場合には以下の記事を参考にSubversion Server も同PCに一緒にインストールしましょう。

【Windows環境構築】Subversion のクライアント TortoiseSVN 環境を整え 開発効率を爆上げしよう

そしてRedmine Server がSubversionの起動コマンド svn.exe を実行できるように、その格納フォルダの絶対パス名

C:\Program Files\TortoiseSVN\bin

を環境変数 $PATH に登録しておく必要があります。

Redmine全体でSubversionを使用可能にする

続いてRedmineの中でSubversionを使用可能とするための全体設定を行います。

これにはまず管理者権限でRedmineにログインし、上部メニューから

管理

を選択し

【Windows環境構築】RedmineとSubversionの連携方法とメリットを徹底解説!プロジェクト管理と品質管理を効果的に遂行する方法


そして左側のメニューから

設定

を選択します。

【Windows環境構築】RedmineとSubversionの連携方法とメリットを徹底解説!プロジェクト管理と品質管理を効果的に遂行する方法


そして設定メニュー上部のリポジトリタブをクリックすると以下の画面となるので

赤線で囲まれた

Subversion

の前のチェックをクリックして保存します。

【Windows環境構築】RedmineとSubversionの連携方法とメリットを徹底解説!プロジェクト管理と品質管理を効果的に遂行する方法

Redmine全体で日本語を使用可能にする

同様に Redmine に管理者権限でログインした状態から

管理 > 設定 > 表示

を選択した後、画面のように

デフォルトの言語:Japanese(日本語)

を選択して保存ボタンをクリックします。

【Windows環境構築】RedmineとSubversionの連携方法とメリットを徹底解説!プロジェクト管理と品質管理を効果的に遂行する方法

Redmine全体でリポジトリブラウザの文字コード自動判別を可能にする

Redmineのリポジトリブラウザは、初期設定でソースコードのエンコーディングがUTF-8であることを前提にしているため、このままだとCP932(Shift-JIS)やEUC-JPなどのエンコーディングのソースコードは日本語の部分が文字化けしてしまいます。

そこで文字化けが発生しないよう、リポジトリ内で使われる可能性のあるエンコーディングをRedmineに設定して自動判別・変換が行われるようにします。

具体的には Redmine に管理者権限でログインした状態から

管理 > 設定 > ファイル

を選択した後、画面のように

添付ファイルとリポジトリのエンコーディング

cp932,utf-8,euc-jp

を入力して保存ボタンをクリックします。

【Windows環境構築】RedmineとSubversionの連携方法とメリットを徹底解説!プロジェクト管理と品質管理を効果的に遂行する方法

Redmineはファイル、あるいは Subversionとの連携操作において使用されるリソースの文字コードをここで指定された順番でチェックしていき、文字コードマッチしたときその文字コードをRedmineの内部文字コードUTF-8に変換して処理します。

【Windows環境構築】RedmineとSubversionの連携方法とメリットを徹底解説!プロジェクト管理と品質管理を効果的に遂行する方法
しらかば堂

入力値と文字コードの対応は以下となっています。

入力値 意味 詳細説明
cp932

CP932(Shift-JIS)

  • 主にWindowsで使用される文字コード
  • 日本語の漢字、ひらがな、カタカナ、半角英数字、一部の特殊文字などを表現
  • マルチバイト文字(2バイト文字)のエンコーディング方式
utf-8

UTF-8(Unicode Transformation Format 8-bit)

  • Redmine、Subversionを含め最も広く使用されている文字コードの一つ
  • Unicode文字セットを表現するために設計されており、世界中の多言語をサポート
  • ASCII文字は1バイトで表現され、非ASCII文字は複数バイトを使用
  • 日本語の漢字、ひらがな、カタカナ、半角英数字、一部の特殊文字などを表現
euc-jp

EUC-JP(Extended Unix Code-JP)

  • 日本のUnix系システムで使用される文字コード
  • 日本語の漢字、ひらがな、カタカナ、半角英数字、一部の特殊文字などを表現
  • マルチバイト文字(2バイト文字)のエンコーディング方式で、CP932と互換性があり

一般的に使われる日本語のエンコーディングはこのUTF-8, CP932, EUC-JPの三つなので、これでほぼカバーできます。

ここまでで Redmine ServerSubversionを使用可能とするための全体設定は終わりです。

リポジトリが利用可能なプロジェクトを新規登録する

次にRedmine内で既にSubversionとの連携を行いたいプロジェクトを新規に作成します。

具体的はまず Redmine に管理者権限でログインし、トップメニューの

プロジェクト

を選択し

【Windows環境構築】RedmineとSubversionの連携方法とメリットを徹底解説!プロジェクト管理と品質管理を効果的に遂行する方法


次に画面右側の

新しいプロジェクト

をクリックします。

【Windows環境構築】RedmineとSubversionの連携方法とメリットを徹底解説!プロジェクト管理と品質管理を効果的に遂行する方法


すると以下のような画面が現れるので*のついている必須入力項目

  • 名称
  • 識別子(このプロジェクトを一意に表す識別子を半角英数字数文字程度で記入)

を記入し、モジュール枠に含まれるリポジトリに必ずチェックを入れ 作成 ボタンをクリックします。

【Windows環境構築】RedmineとSubversionの連携方法とメリットを徹底解説!プロジェクト管理と品質管理を効果的に遂行する方法
【Windows環境構築】RedmineとSubversionの連携方法とメリットを徹底解説!プロジェクト管理と品質管理を効果的に遂行する方法
しらかば堂

プロジェクト作成時にこの リポジトリ モジュールにチェックを入れないとプロジェクト操作でリポジトリを参照したり、Subversion と連携をすることができません。

このプロジェクト設定はあとで追加することができますが、プロジェクト運用方法を途中で変えるのは悪手なので、プロジェクトを立ち上げ直後にこの設定をします。

この設定はSubversionとの連携が必要なプロジェクトに対して個別に行います。これにより個々のプロジェクトごとに別のリポジトリが設定可能です。


すると入力した情報により新たにプロジェクトが作成され、 Redmine のトップメニューにある

プロジェクト

からこのプロジェクトを参照できるようになります。

【Windows環境構築】RedmineとSubversionの連携方法とメリットを徹底解説!プロジェクト管理と品質管理を効果的に遂行する方法
しらかば堂

ここでは例として 開発プロジェクトの採番 というプロジェクトを新規作成しています。

つまり accdb、bat、xlsx、といった複数の拡張子を持つファイル群をまとめてプロジェクト管理したかったため、

ユニークな番号=問題(チケット)番号

とできるように作ったプロジェクトです。

そしてこのプロジェクトの内容を確認したいときはそのプロジェクト名

開発プロジェクトの採番

をクリックします。

【Windows環境構築】RedmineとSubversionの連携方法とメリットを徹底解説!プロジェクト管理と品質管理を効果的に遂行する方法

このプロジェクトにリポジトリを登録する

続けて

設定 > ✙新しいリポジトリ

を順にクリックします。

【Windows環境構築】RedmineとSubversionの連携方法とメリットを徹底解説!プロジェクト管理と品質管理を効果的に遂行する方法


するとこのような画面が現れるので赤線枠内のそれぞれの項目に必要事項を入力し、最後に作成ボタンをクリックします。

それぞれの入力項目は次のようなものです。

項番 フィールド名 入力例 説明
1 バージョン管理システム Subversion バージョン管理システムとして何を使用するかをプルダウンメニューから選択します。
2 メインリポジトリ 今回登録するリポジトリをメインリポジトリとしたい場合に☑を入れます。
3 識別子 複数のリポジトリを定義したい場合にそれぞれのリポジトリを識別したいときに入力します。入力は任意です。
4 URL http://url_of_repository/ リポジトリのURLを入力します。
5 ログインID user Redmineがリポジトリにアクセスする際に使用するログインIDを入力します。
6 パスワード password 上記ログインIDに対するパスワードを入力します。
【Windows環境構築】RedmineとSubversionの連携方法とメリットを徹底解説!プロジェクト管理と品質管理を効果的に遂行する方法
【Windows環境構築】RedmineとSubversionの連携方法とメリットを徹底解説!プロジェクト管理と品質管理を効果的に遂行する方法
しらかば堂

このURL、ログインID、パスワードは以下の関連記事

【Windows 環境構築】共同作業がスムーズになる!自宅、会社のワークスペースで Subversion を使ってみよう

中で作成したリポジトリの

  • Repository URL
  • User name
  • Password

つまりVisualSVN Server の管理画面で

Repository > Open in Web Interface

を順に選択した際に現れる

【Windows環境構築】RedmineとSubversionの連携方法とメリットを徹底解説!プロジェクト管理と品質管理を効果的に遂行する方法


Web画面のURL、そしてその時に入力すべきユーザー名、パスワードと同じものを入力します。

【Windows環境構築】RedmineとSubversionの連携方法とメリットを徹底解説!プロジェクト管理と品質管理を効果的に遂行する方法


すると次の画面が現れるので、ここまででこのプロジェクトに対するリポジトリの設定は終了です。

【Windows環境構築】RedmineとSubversionの連携方法とメリットを徹底解説!プロジェクト管理と品質管理を効果的に遂行する方法

プロジェクト全体に関連するリポジトリを参照する

以後、Windows10 搭載作業PCでソフトウエアのソースコード変更後、

refs #xxxx (#xxxx はRedmine 内のチケット番号)

というおまじないを含むコメントをつけてコミットする運用を続けていくと

先にご紹介したように

  • 問題(チケット)配下のリポジトリ修正履歴参照
  • 問題(チケット)配下のリポジトリのリビジョン間差分表示

が可能です。

またRedmine側でこの

プロジェクトを選択後

リポジトリ

を選択することでこのプロジェクト全体に関連した

  • リポジトリ名称
  • リビジョン
  • 最終更新からの経過日数
  • 作成者
  • 対応リポジトリにかかった最終変更で入力された最終コメント
  • 最終リビジョンのリスト

等も参照できるようになります。

【Windows環境構築】RedmineとSubversionの連携方法とメリットを徹底解説!プロジェクト管理と品質管理を効果的に遂行する方法

まとめ

RedmineSubversionの連携は、プロジェクト管理と品質管理を効果的に遂行するための重要な手法です。

Redmineはオープンソースのプロジェクト管理ソフトウェアであり、チームでのタスク管理や情報共有をサポートします。一方、Subversionはオープンソースのバージョン管理ソフトウェアであり、ファイルの変更履歴の管理や共同作業を円滑に行うことができます。

RedmineSubversionを連携させると、プロジェクト運営をよりスムーズに進めることができます。

この記事では

  • RedmineとSubversionを連携するメリット
  • RedmineとSubversionを連携させる方法

について順にご紹介しました。

この記事が読者の方の職場、自宅での生産性の向上に少しでもお役にたてれば幸いです。