改変履歴情報の登録
Simple Wiki Based Contents Management System
Home Projects Memo Misc Topics Software
ソフトウェア関連 >> ツール >> RTCビルダ on the Web >> ソースコードの編集 >> 改変履歴情報の登録

改変履歴情報の登録

RTCBoWでは、作成したソースコードの改変履歴を登録し、管理することができます。この機能は、SVNやMercurial,Gitなどのバージョン管理システムで行うのが普通なのですが、PHP単体でそれらのシステムにアクセスする機能がみたたらないので(httpで通信できるので、プロトコルがわかれば、実装可能なのですが、それでもhttpの拡張機能が必要になるので)独自に実装することにしました。
また、通常だとバージョン間の差分を保存し、リソースの節約を行いたいところなのですが、Diffの機能がPHPでは、PECL拡張になっていたこともあり、差分でなくそのまま登録することにしています。そのため、通常のバージョン管理システムよりもディスク等が多く必要になることをご留意願います。
とはいっても、ソースファイルはテキストですので、近年のディスク容量を考えればあまり問題にならないとは思います。
それでは、RTCBoWで実装した改変履歴管理について説明します。
改変履歴管理の機能は、ソースファイルの編集画面に統合されています。

改変履歴管理の機能を使用する場合には、まず、「言語・OSのセレクタ」から管理対象となるソースコードを選択します。するとソース編集の状態になり、のすぐ下に[新バージョンの登録]ボタンが表示されます。このボタンを押下すると、現在の状態を新しいバージョンとして登録することができます。下図は、[新バージョンの登録]ボタンを押下した直後の画面です。

バージョンの履歴は、上図の赤枠にある変更点のコメントのところに改変情報を入力して、[登録実行]ボタンを押下することで、サーバー上のデータベースに、直前に登録されたバージョンから改変された部分が登録されます。
登録されるソースコードは、前のソースコードとの差分ではなく、現在のソースコードが登録されます。また、バージョン登録の前に同じソースコードを何度か修正した場合には、現在の最新のもののみが登録され、それ以外は破棄されることになります。
なお、外部ファイルのアップロードのところでも記載していましたが、新規にアップロードされたファイル、直前に登録された外部ファイルから変更されたファイルがアップロードされていれば、そのファイルも登録されます。
登録されたバージョンの履歴は、ソースファイル編集のトップ画面でも表示されていた [バージョン履歴表示]ボタンでその一覧を表示させることができます。
下図は、バージョン履歴の一覧の例になります。

この画面は、バージョン履歴とコマンドボタンからなりバージョン履歴の表のいずれからの行を選択し、その登録情報やソースコードをその時のバージョンの状態に戻すことができます。
下図は、バージョンの選択画面です。選択したバージョンの行がピンク色に変わり、そのバージョンIDが上の入力ボックスに挿入されます。

選択したバージョンの履歴情報を見るには、バージョン履歴のいずれかを選択した状態で、[情報を見る]ボタンを押下すると、下図のように管理用のID、登録者、更新日時、そのバージョンの構成ファイル名、アップロードした外部ファイル名、更新部分が表示されます。


外部ファイルの追加(アップロード)
ソースコードの編集
改変履歴からソースコードを復元