XPagesのソースコードをSubversionで管理

2012/6/9

Domino Designer 8.5.3からDBの設計要素をテキストファイルにエクスポートできるようになった。 この機能を使えば、XPages設計のソースコードをSubversionなどのソースコード管理システムで管理できるようになる。

ソースコードが管理できるようになると、変更前のソースコードに簡単に戻せるようになるので、大規模な改造も気楽にできるようになる。

Subversionについて

Subversionはソースコードの管理サーバであり、「リポジトリ」と呼ばれる格納場所に各プロジェクトのソースコードを格納していく。 リポジトリはファイルシステムのようになっていて、分類ごとやプロジェクトごとにフォルダを作って、その中でソースコードの変更を管理していく。

Windowsには「TortoiseSVN」というエクスプローラと統合されたクライアントソフトが用意されていて、フォルダを選んで、「コミット」、「更新」、「変更前の状態に戻す」などの操作ができる。

Domino DesignerからDBの設計をエクスポートさせるフォルダを用意し、そのフォルダ内のソースコードをTortoiseSVN/Subversionで管理することで、DBのソースコードの変更を含めて管理できるようになる。

SubversionサーバとTortoiseSVNのインストールやセットアップ方法については、解説してくれているページがいっぱいあるので、自分で探してみてほしい。

OnDiskProject

Domino Designerには「On Disk Project」なる機能が用意されていて、DBの設計を特定のフォルダに自動的にエクスポートすることができる。 吐き出すだけでなく、On Disk Projectフォルダの変更をDBの設計に反映することもできる。

On Disk Projectは以下の手順で作成する。

チーム開発のパネルその1

On Disk Projectのフォルダの中身は以下のようになっている。DominoDesignerでDBの設計を変更すると、このフォルダ内のファイルも自動的に更新されるようになっている。 逆に、このフォルダ内のファイルを変更し、Domino Designer側で、[チーム開発/オンディスクプロジェクトとの同期]メニューを実行すると、DBの設計に反映される。よって、On Disk Projectの中身を消去して、 同期メニューを実行してしまうと、DBの設計も全部クリアされてしまうので注意が必要。

On Disk Projectフォルダの中身

On Disk ProjectフォルダをSubversionの管理下に

On Disk ProjectフォルダをSubversionの管理下におくには以下のようにする。

On Disk Projectフォルダの中身

ここまでの操作は、SubversionのリポジトリにOn Disk Projectのコピーを作っただけ。これだけでは、まだこのフォルダはSubversionの管理下には入っていない。「チェックアウト」という操作を行うことで、 On Disk ProjectをSubversionの管理下に組み込むことができる。

On Disk Projectフォルダの中身

これでOn Disk ProjectにSubversionの管理用ファイル(.svnフォルダの下に配置される)がコピーされ、Subversionの管理下に入る。

DB設計変更後の操作

DBの設計を変更すると、On Disk Projectフォルダの中身も同時に変更される。DB設計が一段落したところで、変更ファイルをSubversionにあげておく。

にチェックを入れておく必要がある。追加したファイルにもチェックを入れて、コミットしてやる。コメントには変更内容の説明を入れておくといい。 On Disk Projectフォルダのコミット

DB設計を元に戻す

DB設計を大きく変更した後、やっぱり元に戻した苦なった場合、[TortoiseSVN/変更の取り消し]や「TortoiseSVN/特定のリビジョンに戻す」といった操作をすれば、On Disk Projectを元に戻すことができる。 その後、Domino Designer側で、、[チーム開発/オンディスクプロジェクトとの同期]メニューを実行すると、On Disk Projectフォルダの内容がDBに反映されるので、DB設計を過去の時点に戻すことができる。

DB設計を大幅に見直すときにはありがたい機能である。