(57)【特許請求の範囲】
【請求項１】
リソースのバージョン情報をノードとし、リソースのバージョン間の派生関係をノード間をつなぐリンクとした木構造により、リソースのバージョンを管理するバージョン管理装置において、
各リソースのバージョン情報を保持するバージョン保持手段と、
バージョン情報間の派生関係の情報と当該派生関係の種別が継続関係又は分岐関係のいずれであるかを示す情報とを対応付けて保持し、１つのバージョン情報から複数のバージョン情報への派生関係がある場合は多くとも１つを継続関係とする派生関係管理手段と、
バージョン情報を選択するバージョン選択手段と、
前記バージョン選択手段によって選択されているバージョン情報から派生している一のバージョン情報について、ユーザの入力に従って派生関係の種別を切り替える派生種別切り替え手段と、を具備し、
前記派生関係管理手段は、前記派生種別切り替え手段によって分岐関係から継続関係への切り替えが指定されたときに、既に、前記選択されているバージョン情報から派生している他のバージョン情報に派生関係の種別が継続関係のものがあれば、当該他のバージョン情報の派生関係の種別を分岐関係に変更し、前記一のバージョン情報の派生関係の種別を継続関係に変更することを特徴とするバージョン管理装置。
【請求項２】
請求項１に記載のバージョン管理装置において、
前記選択されているバージョン情報から新しいバージョン情報を派生させるバージョン派生手段と、
バージョン派生時に派生関係の種別を継続関係にするか分岐関係にするかに関する入力をユーザから受け付ける派生種別入力手段と、を具備し、
前記派生関係管理手段は、前記派生種別入力手段によって継続関係が指定されたときに、既に、前記選択されているバージョン情報から派生しているバージョン情報に継続関係として管理されているものがあれば、該バージョン情報の派生関係の種別を分岐関係に変更し、前記新しく派生したバージョン情報の派生関係の種別を継続関係とすることを特徴とするバージョン管理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、電子文書やプログラム等の電子的なリソースについてそれらのバージョンを木構造で管理するバージョン管理装置及び管理方法に関し、特に、リソースのバージョン間の派生関係を継続と分岐の２種類に分けて管理することにより、継続関係で集合化されるバージョングループとして管理して、バージョングループ単位での選択や表示等の操作機能を提供する装置及び管理方法に関する。
【０００２】
【従来の技術】
電子文書、プログラム、或る作業目的のために電子文書等のデータとエディタ等のツールを一纏めにしたワークスペース等と言った電子的なリソースの変更の履歴を管理し、必要な状態のものを復元する技術はバージョン管理と呼ばれる。バージョンの記録は、重要な変更を行った時点の状態への復元、完成までのマイルストーン、発行した状態の保存など様々な目的で行われる。
なお、ワークスペースはデータやプログラムの実体を一纏めにして構成されるばかりではなく、これらデータやプログラムのリファレンスを一纏めにして構成される場合もある。
【０００３】
バージョン管理では、１つのリソースに対して複数の異なるバージョンを管理しており、或るバージョンのリソースに変更を加えることによって新しいバージョンのリソースが生成された場合、古いバージョンと新しいバージョンの間に派生関係を付けてリソースの変更の履歴を管理している。
一般に１つのバージョンから複数のバージョンを派生することができ、１つのバージョンから直接的或いは間接的に派生したバージョン群は、各バージョンをノードとしノード間を派生関係のリンクで繋いだ木構造を形成する。このバージョン木構造は導出木（derivation tree）と呼ばれるもので、その中から１つのノードを選択することによって変更前のリソースの状態（過去の状態）を指定し、それを復元することができる。
【０００４】
従来より、ユーザがバージョン管理された文書の編集を行うことを支援するために、バージョン木構造を管理して、ユーザに対してこの木構造の中からバージョンを選択する手段を提供する技術が幾つか知られている。
例えば、文献"K.McAlpine & P.Golder, 'A New Architecture for a Collaborative Authoring System', Computer Supported Cooperative Work (CSCW), vol.2, no.3, pp.159-74, 1994"には、バージョン木構造を用いたバージョン管理を文書構造の管理に応用した例が示されており、ユーザはバージョン木構造から必要な文書構造を持つ文書のバージョンを選択することができるようになっている。
また、特開平７−２９５９３０号公報に記載された情報処理装置では、ワークスペース上の操作履歴を管理し、これら操作履歴を復元可能にすることで作業のやり直しを容易にしている。
また、特開平８−２４９３５７公報に記載された情報処理装置では、リソースに対する意味付けを行って、この意味付けを利用することで作業の履歴に基づいた情報の分類や探索を容易にしている。
【０００５】
【発明が解決しようとする課題】
上記のようにリソースのバージョンを木構造によって管理することにより、リソースの変更に履歴を管理して必要な状態を復元することができる。
しかしながら、バージョン木構造から業務に必要な適切なバージョンのリソースを選択するためには、バージョン木構造が表しているリソースの変更過程を理解しなければならないため、単にバージョン木構造で管理されているリソースを扱うことか通常のユーザにとって容易ではないという問題があった。
【０００６】
すなわち、単なるバージョン木構造からは、どのような目的で複数のバージョンが派生し、現在その目的のために更新が行われているのはどのバージョンであるのかを知ることができないため、各バージョンの意味を理解することが困難であった。特に、自分以外の人によってもバージョンの派生が行われる場合には、バージョンの選択はより困難なものになっていた。
また、雛型となるリソースを選択してそれを変更するという進め方でリソースの変更を進めて行くと、１つのバージョンから非常に大きなバージョン木構造が形成されるため、上記のような事情から、このバージョン木の中を探索するのは困難であった。
【０００７】
なお、従来のようにワークスペースの状態変化によって作業の履歴を表現する場合には、或る作業がどのように変化してきたについては知ることができる。
しかしながら、作業のために用意していたワークスペースが少しづつその目的を変えたり、また、複数の種類の作業に分割された場合には、作業間の関係を後から知ることはできず、上記と同様な問題を生じていた。特に、自分以外の人によって行われた作業同士の関係を知ることは困難であった。
【０００８】
本発明は上記従来の事情に鑑みなされたもので、バージョン間を継続と分岐という異なる意味付けの派生関係で管理することにより、ユーザが派生関係の意味を容易に理解できるようにして、木構造で管理されているリソースを通常のユーザであっても容易に扱えるようにすることを目的とする。
【０００９】
また、本発明は、継続の派生関係によってバージョン木構造を目的毎のバージョングループに分割し、バージョングループ単位での選択、表示、操作等を可能にすることで、ユーザにとって簡便に利用できるバージョン管理装置及び管理方法を提供することを目的とする。
また、本発明は、作業の進行に伴って目的が変化したり作業が分岐したときに、継続の派生関係によってワークスペース間の関係付けに意味を持たせることで、作業のグループ構造を形成することができるバージョン管理装置及び管理方法を提供することを目的とする。
【００１０】
【課題を解決するための手段】
本発明では、電子的なリソースのバージョン情報をノードとし、これらリソースのバージョン間の派生関係をノード間をつなぐリンクとした木構造を用いたバージョン管理において、派生関係を継続と分岐の２種類に分け、木構造に含まれるバージョン情報群を継続関係でグループ化されるバージョングループに分割し、このバージョングループ単位での選択、表示、操作の機能を提供することによって、バージョン情報に対する操作を簡便にする。
ここに、バージョン情報とは、リソースの実体的なデータやプログラムを含んだ情報であっても、このような実体的な内容にアクセスするためのリソースの更新日や名称等のリファレンスのみから構成される情報であってもよい。
【００１１】
具体的には、本発明に係るバージョン管理装置では、バージョン保持手段により各リソースのバージョン情報を保持し、派生関係管理手段によりバージョン間の派生関係を保持管理しており、この派生関係管理手段は、派生関係を継続関係と分岐関係との少なくとも２種類に分けて管理し、１つのバージョン情報から複数のバージョン情報への派生関係がある場合には、これら派生関係の内の多くとも１つだけを継続関係として管理する。
すなわち、本発明では、或るバージョン情報（ノード）から複数の派生関係（リンク）が派生する場合に、これら派生関係内には継続関係が２つと無いようにし、他の派生関係は全て分岐関係として管理し、この継続関係によって直接的或いは間接的に関係づけられたバージョン情報の集合をバージョングループという単位で扱うことで、バージョン木構造をユーザにとって管理の容易な単位に分割する。
【００１２】
本発明では、バージョンの派生時に継続関係か分岐関係かが決定されて管理されるが、いずれの関係に決定するかの条件は種々な態様で設定される。
例えば、バージョン選択手段により選択されているバージョン情報から他のバージョン情報への継続関係が既にある場合には新しいバージョン情報の派生関係を分岐関係として管理する、継続関係にあるバージョン情報の集合としてバージョングループ選択手段により選択されているバージョングループ内のバージョン情報から派生した新しいバージョン情報の派生関係を派生元のバージョン情報が最新のものであれば継続関係とする一方最新でなければ分岐関係として管理する、バージョン選択手段により選択されているバージョン情報から他のバージョン情報への継続関係が無い場合には新しいバージョン情報の派生関係を継続関係として管理する、ユーザからの設定入力に応じて新しいバージョン情報の派生関係を継続関係又は分岐関係として管理する。
なお、本発明に係るバージョン管理装置では、既に設定されている派生関係の種別をユーザの入力に従って切り替えることも可能であり、派生関係管理手段は当該切り替えた種別で派生関係を管理する。
【００１３】
また、本発明に係るバージョン管理装置では、バージョン情報の操作に供するためのユーザインタフェースを提供し、バージョングループ表示手段が継続関係にあるバージョン情報の集合を表示し、バージョン内容表示手段がその内の選択されているバージョン情報の内容を表示する。そして、このバージョン情報集合の表示においては、バージョングループ表示手段は、バージョン内容表示手段により表示されているバージョン情報を他のバージョン情報と異なる態様で区別して表示して、バージョン情報の内容と当該バージョンの木構造内における位置とをユーザに把握させる。
また、バージョングループ表示手段は、他のバージョン情報集合と分岐の派生関係を有するバージョン情報の表示形態を他のバージョン情報と異なる態様で区別して表示して、バージョン木構造内における当該集合の位置をユーザに把握させる。
【００１４】
ここで、本発明によって管理されるバージョン木構造を、従来の単純なバージョン木構造と比較して説明しておく。
図１と図２には従来のバージョン木構造の一例を示し、図３には本発明によるバージョン木構造の一例を示してある。
図１に示すバージョン木構造は、バージョン（１）から始まり、終端でバージョン（１．１．１．１．１）（１．１．１．１．２）（１．１．２．１．１）となるバージョンの分岐が木構造として構成されている。これだけの情報からでは、ユーザは自分の必要なバージョンを選択することは極めて困難である。
【００１５】
図２に示すバージョン木構造は、バージョンの分岐時の日付（変更日）と変更の理由をリンクとともに示して構成されている。このような情報を付加すれば、ユーザにとってバージョンの選択は容易になるが、分岐時に変更理由を毎回記録する必要があってユーザにとって煩わしい作業となり、また、各バージョン間の作業進行状況が一目で把握できないものであった。
図３に示す本発明に係るバージョン木構造では、バージョン分岐時に継続か分岐化の判断を派生関係管理手段により行い、その結果を利用して継続関係で結ばれるバージョンを、図中に「サンプル特許」「Ｖ管理特許」「ＷＳ特許」「Ｖ表示特許」のグループ名を付して四角に囲って示すようにグループ化する。このような管理形態により、各バージョングループの中では継続するバージョンが一列に並ぶため、ユーザが作業の進行について把握することが容易になる。
【００１６】
【発明の実施の形態】
本発明を、編集が施される電子データ文書のバージョン管理に用いた一実施例に基づいて具体的に説明する。
図４には本実施例のバージョン管理装置の構成を示してあり、当該バージョン管理装置はコンピュータハードウエア資源を用いてバージョン管理プログラムを実行することにより各機能部が構成されている。
本実施例のバージョン管理装置は大きく分けて、ハードディスク等の二次記憶装置とその制御を行うことにより木構造のバージョン情報を保持管理する記憶制御部１と、メインメモリに展開したデータに対して処理を行うことによりバージョン情報に対する処理を行う制御部２と、表示ウィンドウやマウス等の標準的な入出力手段を制御してユーザへの情報提示と入力獲得を行うユーザインタフェースを構成する入出力制御部３とを備えている。
【００１７】
記憶制御部１は、バージョン情報の内容を保持するバージョン保持部１１と、バージョン情報間の派生関係を記録して管理する派生関係管理部１２とを有している。
制御部２は、記憶制御部１に保持管理されたバージョン木構造からユーザの指示等に従って継続の派生関係によって連なる一連のバージョン情報の集合を選択するバージョングループ選択部２１と、選択された派生関係によって連なるバージョン情報の集合（バージョングループ）からユーザの指示等に従ってバージョン情報を選択するバージョン選択部２２と、ユーザからの処理オペレーション等に従って選択されているバージョン情報の内容を変更するバージョン変更部２３と、変更されたバージョン情報を新たなバージョン情報として選択されているバージョンへの派生関係を設定するバージョン派生部２４とを有している。
【００１８】
入出力制御部３は、選択されたバージョングループの情報を表示するバージョングループ表示部３１と、バージョングループから選択されたバージョン情報の内容を表示するバージョン内容表示部３２と、ユーザからのバージョン情報の指定を受け付けるバージョン指定入力部３３と、選択されているバージョン情報に対するユーザからの処理コマンドを受け付ける処理コマンド入力部３４とを有している。
【００１９】
【表１】
0004051765.tif 000002
【００２０】
表１には、バージョン木構造を表現するために派生関係管理部１２で扱うデータ構造の一例を示してある。なお、この例は図３に示したバージョン木構造に対応しており、また、始点及び終点のバージョンＩＤ並びに更新日は図１及び図２に示すものに対応している。
表１のデータ構造は、バージョン情報間の派生関係を始点ノードと終点ノードとなる２つのバージョン情報間のリンクとして表現してあり、継続と分岐の区別やバージョングループとして抽出されたときのグループ名を保持している。すなわち、このデータ構造では、派生関係管理部１２が派生関係のリンクを直接記述している。
【００２１】
例えば、図３において、「サンプル特許」と言う名称のバージョングループにはＩＤが（１）（１．１）（１．１．２）の３つのバージョン情報が含まれるが、これら３つのバージョン情報を繋ぐ２つの派生関係（始点ＩＤ（１）と終点ＩＤ（１．１）とを繋ぐリンク、始点ＩＤ（１．１）と終点ＩＤ（１．１．２）とを繋ぐリンク）は種別が「継続」でグループ名が「サンプル特許」で記述されている。なお、始点ＩＤ（１．１）と終点ＩＤ（１．１．１）とを繋ぐリンクや、始点ＩＤ（１．１．２）と終点ＩＤ（１．１．２．１）とを繋ぐリンクは、異なるバージョングループ間を繋ぐリンクであるので、種別が「分岐継続」の派生関係として記述され、また、本実施例では、これらには派生先のグループ名が記述されている。
したがって、バージョングループ選択部２１がリンクの種別をたどることで、各バージョングループを取り出すことができる。
【００２２】
なお、本発明の目的は、バージョン木構造を扱うこと自体ではなく、ユーザにとって操作の簡便なバージョン情報のグループ化の手段を提供することにあることから、バージョングループを定義できれば、表１に示すようなデータ構造以外にも種々なデータ構造を採用することができる。
例えば、表２に示すように、派生関係管理部１２が派生関係のリンクを直接記述するのではなく、バージョングループを主体にしたデータ構造を採用してもよい。なお、表２のようなデータ構造とした場合には、バージョングループ選択部２１は、所属バージョンとして示されるバージョンの集合をリンクをたどらずに一度に取り出すことができる。
【００２３】
【表２】
0004051765.tif 000003
【００２４】
図５には、バージョングループ表示部３１及びバージョン内容表示部３２によってユーザに提供される表示画面ウインドウの構成を示してある。なお、この表示画面は表示した情報に対する文書編集ツールの機能も有しており、バージョン指定入力部３３や処理コマンド入力部３４から入力に応じて表示する情報の切り替えや表示した情報内容の変更が行われる。
この表示画面ウィンドウは、選択された１つのバージョングループをノード（バージョン情報）とリンク（継続の派生関係）の図形で表示するバージョングループ表示エリア４０、表示したバージョングループ内の選択されているバージョン情報の内容を表示するエリア４１、表示しているバージョングループの名称を表示するバージョン名表示エリア４２を有している。
【００２５】
また、バージョングループ表示エリア４０では、表示しているバージョングループが他のバージョングループから分岐されている場合には、分岐元へのアクセスマーカ４３が対応するノードに付属させて表示され、表示しているバージョングループから他のバージョングループが分岐されている場合には、分岐先へのアクセスマーカ４４が対応するノードに付属させて表示される。したがって、バージョン指定入力部３３からユーザがマーカ４３や４４をポインティングして入力を行うと、バージョングループ選択部２１がこれに応じて指定された他のバージョングループを記憶制御部１から選択し、バージョングループ表示部３１によって当該バージョングループがバージョングループ表示エリア４０に切り替え表示される。
【００２６】
また、バージョングループ表示エリア４０では、バージョン内容表示エリア４１に表示しているバージョン情報のノードを他のノードとは色を異ならせて表示しており、バージョングループ内のいずれのノードの内容が表示されているかを識別できるようにしている。
そして、バージョン指定入力部３３からユーザがエリア４０に表示されているノードをポインティングして入力を行うと、バージョン選択部２２がこれに応じて指定された他のバージョンを記憶制御部１から選択し、バージョン内容表示部３２によって当該バージョン情報の内容がバージョン内容表示エリア４１に切り替え表示される。
【００２７】
次に、上記構成のバージョン管理装置によって行われる処理をユーザインタフェースの側面から説明する。なお、対象としているバージョン木構造は図１〜図３に示したものを例にとって説明する。
図６〜図９には、７月１日に更新されたバージョン情報と７月１０日に更新されたバージョン情報とから成る名称「Ｖ管理特許」のバージョングループに対して、７月２０日に入力部２４から処理コマンドを入力して、表示、表示切り替え、変更、保存の処理を行った場合の一例を示してある。
【００２８】
まず、表示するバージョングループをその名称（「Ｖ管理特許」）により選択して表示ウインドウを開くと、図６に示すように、バージョングループ選択部２１が対応するバージョングループの情報を記憶制御部１から取り出してバージョングループ表示部３１がエリア４０に表示するとともに、バージョン選択部２２が当該バージョングループ内の最新のバージョン情報（７／１０）を選択してバージョン内容表示部３２が当該内容をエリア４１に表示する。なお、この表示状態では、更新日が７／１０のノードマーカは更新日が７／１のノードマーカとは異なる色で表示される。
そして、エリア４０の表示されている７／１のノードマーカをユーザが選択すると、図７に示すように、エリア４１に表示される内容は当該選択されたバージョン情報の内容に切り替えられ、また、異なる態様で表示されるノードマーカは７／１のノードマーカに切り替えられる。
【００２９】
また、図６に示す様態において、エリア４１に表示されている内容にユーザ操作に応じてバージョン変更部２３が編集を加えると、図８に示すように、更新日（作成日）７／２０の新たなバージョン情報が生成される。
そして、本例では、対象ノードから既に継続関係が派生していないときには（すなわち、最新のバージョンからの派生の時には）保存処理については継続の派生関係とする設定条件となっており、ユーザが保存処理コマンドを入力すると、バージョン派生部２４が上記の新たなバージョン情報を継続関係で派生させる。したがって、この新たなバージョン情報は元のバージョングループ内に含まれ、図９に示すように、エリア４０にはこの新たなバージョンノードが追加されてリンクでつながれて表示される。なお、この新たなバージョン情報及び継続の派生関係は記憶制御部１によってバージョン木構造に追加されて保持管理される。
【００３０】
図１０〜図１４には、図９に示した状態となった上記のバージョングループに対して、８月１日に入力部２４から処理コマンドを入力して、表示、表示切り替え、変更、保存の処理を行った場合の一例を示してある。
【００３１】
まず、表示するバージョングループをその名称（「Ｖ管理特許」）により選択して表示ウインドウを開くと、図１０に示すように、対応するバージョングループの情報がエリア４０に表示されるとともに、当該バージョングループ内の最新のバージョン情報（７／２０）の内容がエリア４１に表示され、７／２０のノードマーカが他のノードマーカとは異なる色で表示される。
そして、エリア４０の表示されている７／１０のノードマーカを選択すると、図１１に示すように、エリア４１に表示される内容は当該選択されたバージョン情報の内容に切り替えられ、また、異なる態様で表示されるノードマーカは７／１０のノードマーカに切り替えられる。
【００３２】
そして、図１１に示すように最新でないバージョン情報の内容を表示した様態において、エリア４１に表示されている内容にユーザ操作に応じて編集を加えると、図１２に示すように、更新日（作成日）８／１の新たなバージョン情報が生成される。
そして、この新たなバージョン情報は最新のバージョン情報から派生したものではなく、派生種別の設定は上記のようになっていることから、ユーザが保存処理コマンドを入力すると、バージョン派生部２４が上記の新たなバージョン情報を分岐関係で派生させる。したがって、この新たなバージョン情報は元のバージョングループから分岐関係で派生した新たなバージョングループを形成し、図１３に示すように、エリア４０の表示が切り替えられてこの新たなバージョンノードだけが表示される。なお、この新たなバージョンノードには分岐元アクセスマーカ４３が付随して表示される。
【００３３】
なお、このように新しいバージョングループを生成する場合には、ユーザに対して新たなグループ名を聞くダイアログ処理が行われ、図１３に示す例では「Ｖ表示特許」という新たなグループ名が付与されている。また、この新たなバージョン情報及び分岐の派生関係は記憶制御部１によってバージョン木構造に追加されて保持管理される。
一方、このように新たなバージョンが分岐で派生した元のバージョングループ（「Ｖ管理特許」）の表示を行うと、図１４に示すように、派生元となるバージョンノード（７／１０）に新たなバージョングループへアクセスするための分岐先マーカ４４が付随して表示される。
【００３４】
次に、上記の処理を実行するためにバージョン管理装置が行う各処理手順を説明する
図１５には、選択指定されたバージョングループについての表示を表示ウインドウに行う処理手順を示してある。
まず、入力部３３からの入力によってバージョングループが指定されると、バージョングループ選択部２１が記憶制御部１に管理されている木構造から指定されたバージョングループの情報を選択して取り出し（ステップＳ１）、バージョングループ表示部３１に、そのバージョングループ名を表示エリア４２に表示させるとともに（ステップＳ２）、そのグループ内のバージョンノード及び継続関係リンクを表示エリア４０に表示させる（ステップＳ３）。
【００３５】
そして、バージョン選択部２２が選択されたグループ内の特定なバージョンが指定されているかを判断し（ステップＳ４）、指定されている場合には当該指定バージョン情報を選択し（ステップＳ５）、指定されていない場合にはグループ内の最新のバージョン情報を選択して（ステップＳ６）、当該選択したバージョン情報の内容をバージョン内容表示部３２により表示エリア４１に表示させる（ステップＳ７）。なお、この内容表示に伴って、バージョングループ表示部３１が表示エリア４０に表示している対応するバージョンノードを強調表示する（ステップＳ８）。
【００３６】
図１６には、表示エリア４１に表示したバージョン情報に対して内容に変更を加えて保存する指示をした場合に、バージョン木構造に追加記憶する処理手順を示してある。
まず、変更処理がなされて制御部２のメインメモリに保持されている変更後の新たなバージョン情報をバージョン保持部１１に格納保存し（ステップＳ１１）、バージョン派生部２４及び派生種別設定部２５が、変更処理のベースとして選択されたバージョン情報（変更が加えられた元のバージョン情報）がそのバージョングループ内で最新のバージョンであるかを判断する（ステップＳ１２）。
【００３７】
この結果、最新のバージョンである場合には、派生関係管理部１２が変更前の元のバージョン情報と変更後の新たなバージョン情報との派生関係を継続として記憶管理する（ステップＳ１３）。一方、最新のバージョンでない場合には、派生関係管理部１２が両バージョン情報間の派生関係を分岐として記憶管理し（ステップＳ１４）、ユーザに対してダイアログ処理により、新たなバージョン情報によって構成される新たなグループのために新たなバージョングループ名の入力を促す（ステップＳ１５）。
【００３８】
図１７には、表示エリア４１に表示したバージョン情報の内容を他のバージョン情報に切り替え表示する場合の処理手順を示してある。
まず、バージョン指定入力部３３によりユーザから切り替え指定（グループの特定のみ、或いは、グループとバージョンとの特定を含む）を受け付けると（ステップＳ２１）、バージョン変更部２３が今現在表示エリア４１に表示しているバージョン情報の内容に変更が加えられているかを判断する（ステップＳ２２）。
【００３９】
この結果、変更が加えられていない場合には図１５に示した手順によって、バージョングループ表示部３１及びバージョン内容表示部３２が、指定に応じたバージョン情報を表示エリア４１に切り替え表示する（ステップＳ２３）。
一方、変更が加えられている場合には図１６に示した手順によって、変更された新たなバージョン情報を記憶させた後に（ステップＳ２４）、図１５に示した手順によって、指定に応じたバージョン情報を表示エリア４１に切り替え表示する（ステップＳ２３）。
【００４０】
図１８には、バージョン木構造に既に存在している分岐の派生関係を継続に変更するためのユーザ指定が入力された場合や、新たに生成されたバージョン情報を記憶する際にユーザによって継続の派生関係が指定された場合の処理手順を示してある。
まず、入力部３４によりユーザから継続の指定を受け付けると（ステップＳ３１）、派生関係管理部１２が、対象としている派生関係リンクにつながっているバージョン情報から継続の派生関係が既に派生しているかを判断する（ステップＳ３２）。この結果、未だ継続関係が存在していない場合には、派生関係管理部１２が当該派生関係を継続として記憶管理する（ステップＳ３３）。
【００４１】
一方、既に継続関係が存在している場合には、派生関係管理部１２が既に存在している継続を派生関係を分岐に変更した後（ステップＳ３４）、分岐に変更することにより発生する新たなバージョングループの名称入力をユーザに促して、指定に係る派生関係を継続として記憶管理する（ステップＳ３５）。
これにより、バージョン木構造内では、或るバージョンノードから複数の派生関係が延びる場合でも、これら派生関係の内の多くとも１つのみが継続となるように保障され、一意に特定されるバージョングループが形成される。ここに、継続関係を指定したときに、ユーザに既に指定されている継続関係を分岐関係に変更してもよいかどうかを確認するように構成してもよい。さらに、継続関係の指定を行う前に、他に継続関係をもつものがある場合に、それを分岐関係に変更する必要があることをユーザに示すために、表示の仕方を変更したり、選択を許可するための準備操作を求めるようにしてもよい。
なお、継続関係を指定すると同様に分岐関係を指定して派生関係を変更することもでき、この場合に、分岐関係はバージョングループを形成する条件要素ではないので、継続関係を設定する場合のように多くとも１つのみの制限は必要ないことは言うまでもない。
【００４２】
ここで、上記した実施例では、バージョングループ表示エリア４０には選択された１つのバージョングループを表示するようにしたが、図１９に示すように、選択されたバージョングループと分岐関係にある幾つかの他のバージョングループも一緒に表示したり、或いは、選択された複数のバージョングループを表示したり、或いは、バージョン木構造に含まれる全てのバージョングループを表示するようにしてもよい。このように複数のバージョングループを表示することによって、バージョンの時間的な分岐と進行の状態を一目で把握することが可能になる。
なお、このように複数のバージョングループを表示する場合には、例えば同図に示すように継続関係は実線で示し分岐関係は破線で示すと言ったように、継続関係と分岐関係とを識別できるように表示するのが好ましい。
【００４３】
また、上記した実施例では、個々の文書をリソースとして、これら文書間のバージョンを管理する例を示したが、本発明は上記と同様な構成によって、図２０〜図２２に示すようにワークスペースの時間的な変化の管理にも適用することができる。
例えば、８月１日の時点で、「Ｖ管理特許」という目的（グループ名）で作業をしているとき、従来技術の調査結果を再度利用しようとして図２０に示すように過去のバージョン（７／１０時点でのワークスペース）に表示を切り替え、図２１に示すように、このワークスペースに「Ｖ表示特許」のための作業を行って変更を加えた場合、この時点で状態を記録する操作を行うと、図２２に示すように、この変更を加えたワークスペースは元のグループから分岐された新たなバージョングループ「Ｖ表示特許」として記憶管理される。
【００４４】
ワークスペースは作業に必要なデータやプログラム等のリソースを維持・管理するツールであるため、このようにワークスペースの時間的な変化を管理することで、作業の進行状態の管理や作業単位で必要なリソースを容易に整理することができる。すなわち、このようにワークスペースの管理に本発明を適用することによって、作業の履歴を反映したリソースの分類・構造化が行える。
なお、構築された構造を例えば図１９に示すように表示することによって、必要なリソースの探索のために有効なガイドとすることができる。
【００４５】
【発明の効果】
以上説明したように本発明によると、バージョン間を継続と分岐という異なる意味付けの派生関係で管理したため、特段の熟練を有しない通常のユーザであっても派生関係の意味を容易に理解することができ、木構造で管理されているリソースを目的の応じて容易に扱えるようになる。
また、本発明によると、継続の派生関係によってバージョン木構造が目的毎のバージョングループに分割されるため、バージョングループ単位での選択、表示、操作等が容易に行えるようになる。また、本発明によると、作業の進行に伴って目的が変化したり作業が分岐したときに、継続の派生関係によってワークスペース間の関係付けに意味を持たせることができるため、作業のグループ構造を形成することができる。
【図面の簡単な説明】
【図１】  バージョン管理の木構造の一例を説明する図である。
【図２】  バージョン管理の木構造の一例を説明する図である。
【図３】  本発明に係るバージョン管理の木構造の一例を説明する図である。
【図４】  本発明の一実施例に係るバージョン管理装置の構成を示す図である。
【図５】  本発明の一実施例に係るユーザインタフェースの構成を示す図である。
【図６】  本発明の一実施例に係る動作例を説明する図である。
【図７】  本発明の一実施例に係る動作例を説明する図である。
【図８】  本発明の一実施例に係る動作例を説明する図である。
【図９】  本発明の一実施例に係る動作例を説明する図である。
【図１０】  本発明の一実施例に係る動作例を説明する図である。
【図１１】  本発明の一実施例に係る動作例を説明する図である。
【図１２】  本発明の一実施例に係る動作例を説明する図である。
【図１３】  本発明の一実施例に係る動作例を説明する図である。
【図１４】  本発明の一実施例に係る動作例を説明する図である。
【図１５】  本発明の一実施例に係るバージョン表示の処理手順を示すフローチャートである。
【図１６】  本発明の一実施例に係るバージョン記録の処理手順を示すフローチャートである。
【図１７】  本発明の一実施例に係るバージョン切り替えの処理手順を示すフローチャートである。
【図１８】  本発明の一実施例に係る継続バージョン記録の処理手順を示すフローチャートである。
【図１９】  本発明の一実施例に係る動作例を説明する図である。
【図２０】  本発明の一実施例に係る動作例を説明する図である。
【図２１】  本発明の一実施例に係る動作例を説明する図である。
【図２２】  本発明の一実施例に係る動作例を説明する図である。
【符号の説明】
１・・・記憶制御部、  ２・・・制御部、  ３・・・入出力制御部、
１１・・・バージョン保持部、  １２・・・派生関係管理部、
２１・・・バージョン部ループ選択部、  ２２・・・バージョン選択部、
２３・・・バージョン変更部、  ２４・・・バージョン派生部、
３１・・・バージョングループ表示部、３２・・・バージョン内容表示部、
３３・・・バージョン指定入力部、  ３４・・・処理コマンド入力部、
４０・・・バージョングループ表示エリア、
４１・・・バージョン内容表示エリア、  ４３・・・分岐元アクセスマーカ、
４４・・・分岐先アクセスマーカ、
【図１】
0004051765.tif 000004
【図２】
0004051765.tif 000005
【図３】
0004051765.tif 000006
【図４】
0004051765.tif 000007
【図５】
0004051765.tif 000008
【図６】
0004051765.tif 000009
【図７】
0004051765.tif 000010
【図８】
0004051765.tif 000011
【図９】
0004051765.tif 000012
【図１０】
0004051765.tif 000013
【図１１】
0004051765.tif 000014
【図１２】
0004051765.tif 000015
【図１３】
0004051765.tif 000016
【図１４】
0004051765.tif 000017
【図１５】
0004051765.tif 000018
【図１６】
0004051765.tif 000019
【図１７】
0004051765.tif 000020
【図１８】
0004051765.tif 000021
【図１９】
0004051765.tif 000022
【図２０】
0004051765.tif 000023
【図２１】
0004051765.tif 000024
【図２２】
0004051765.tif 000025