JPH04335428A - ファイルのバージョン管理方法 - Google Patents

ファイルのバージョン管理方法

Info

Publication number
JPH04335428A
JPH04335428A JP3106210A JP10621091A JPH04335428A JP H04335428 A JPH04335428 A JP H04335428A JP 3106210 A JP3106210 A JP 3106210A JP 10621091 A JP10621091 A JP 10621091A JP H04335428 A JPH04335428 A JP H04335428A
Authority
JP
Japan
Prior art keywords
version
file
user
definition table
space definition
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP3106210A
Other languages
English (en)
Inventor
Takao Shinto
隆夫 新堂
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP3106210A priority Critical patent/JPH04335428A/ja
Publication of JPH04335428A publication Critical patent/JPH04335428A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、電子計算機のオペレ
ーティングシステムにおけるファイルのバージョン管理
方法に関するものである。
【0002】
【従来の技術】図2は従来のファイルのバージョン管理
方法を説明するための概念図である。図2に示されるも
のは、例えばUNIXオペレーティングシステム上で動
作するSCCS(Source Code Contr
ol System)やRCS(Revision C
ontrol System)等で用いるファイルのバ
ージョン管理方法を説明するためのものである。図にお
いて、1,2はバージョン管理の対象となっているファ
イルであり、それぞれのファイル名をファイルA,ファ
イルBとする。各ファイル1,2の中には幾つかのバー
ジョン3が含まれている。バージョン3には、例えば1
.1,1.2,2.1,2.2のような番号が付けられ
ている。6はバージョン管理システム、7はバージョン
管理システム6によって取り出された、例えばファイル
1(ファイルA)の1つのバージョン3のコピーである
【0003】次に、上記従来のファイルのバージョン管
理方法について説明する。ユーザはバージョン管理シス
テム6のコマンドを使用して、例えばファイル1の特定
のバージョン3のコピー7を取り出すことができる。こ
のようにして取り出されたバージョン3は、バージョン
管理の対象ではない通常のファイルの形式となっており
、このような形式のファイルのバージョン3は、ユーザ
により必要に応じてエディタを使用して編集したり、あ
るいはコンパイラによってコンパイルしたりすることが
できる。そして、いったん取り出されたバージョン3を
編集した場合は、バージョン管理システム6のコマンド
を使用して、元のファイルの新しいバージョン3として
登録することが出来る。
【0004】
【発明が解決しようとする課題】上記したような従来の
ファイルのバージョン管理方法では、各ファイル1,2
のバージョン3の取出し、あるいは登録をする場合に、
ユーザは特定のファイルのバージョンをいちいち意識し
て特別な操作を行うことが必要であるという問題点があ
った。また、ファイルのバージョン管理の対象はソース
プログラムファイルに限られており、このソースプログ
ラムファイルと、これから生成されたオブジェクトモジ
ュールやロードモジュール等のファイルのバージョンを
統一的に管理することは出来ないという問題点があった
【0005】この発明は上記のような問題点を解消する
ためになされたもので、ファイルのバージョンの取扱い
をユーザがほとんど意識することなく実行することが出
来るファイルのバージョン管理方法を提供することを目
的とする。
【0006】また、この発明の別の発明はソースプログ
ラムファイルだけでなくオブジェクトモジュールやロー
ドモジュール等のファイルのバージョンを統一的に管理
することが出来るファイルのバージョン管理方法を提供
することを目的とする。
【0007】
【課題を解決するための手段】この発明に係るファイル
のバージョン管理方法は、ユーザが使用するファイルの
名前とバージョン番号の対応を記述したバージョン空間
定義表を使用することにより、ファイルのバージョンの
取扱いをユーザがほとんど意識することなく実行するよ
うにしたものである。
【0008】また、この発明の別の発明に係るファイル
のバージョン管理方法は、各ファイルのバージョンに、
ファイルの当該バージョンの内容以外に、そのファイル
が生成される元になったファイルの名前とバージョン番
号を示す情報を包含することにより、相互に関連のある
ファイルのバージョンを統一的に管理するようにしたも
のである。
【0009】
【作用】この発明におけるファイルのバージョン管理方
法は、バージョン空間定義表を使用することにより、ユ
ーザには自己が使用するファイルのバージョンのあらか
じめ定義されたバージョン空間が与えられるために、い
ちいちファイルのバージョン番号を意識することなく自
己の希望するバージョンを使用し得る。
【0010】また、この発明の別の発明におけるファイ
ルのバージョン管理方法は、各ファイルのバージョンに
包含される情報によって、当該バージョンのファイルが
生成される元になったファイルの名前とバージョン番号
が分かるようになっているので、例えばソースプログラ
ムファイルとオブジェクトモジュールのファイルのよう
な互いに関連のあるファイルのバージョン管理を統一的
に行い得る。
【0011】
【実施例】以下、この発明の一実施例を図について説明
する。図1はこの発明の実施例であるファイルのバージ
ョン管理方法を説明するための概念図である。図におい
て、1,2はバージョン管理の対象となっているファイ
ルであり、それぞれのファイル名をファイルA,ファイ
ルBとする。各ファイル1,2の中には幾つかのバージ
ョン3が含まれている。バージョン3には、例えば1.
1,1.2,2.1,2.2のような番号が付けられて
いる。またバージョン3には、各ファイル1,2の当該
バージョン3の内容以外にそのファイルが生成される元
になったファイルの名前とバージョン番号を示す情報4
が包含されている。5はバージョン空間定義表であり、
このバージョン空間定義表5にはユーザが使用するファ
イルの名前とバージョン番号の対応関係を示す情報が格
納されている。
【0012】次に、上記この発明の実施例であるファイ
ルのバージョン管理方法について説明する。ユーザは、
自己が使用するファイルの名前とバージョン番号の一覧
表を電子計算機のオペレーティングシステムに登録する
。オペレーティングシステムは、上記一覧表の情報をバ
ージョン空間定義表5にセットして保存して置く。ここ
で、ユーザごとに異なるバージョン空間定義表5を登録
することが出来る。また、1人のユーザが複数のバージ
ョン空間定義表5を登録して置くことも出来る。
【0013】複数のバージョン空間定義表5を登録して
いるユーザは、実際にはどのバージョン空間定義表5を
使用するのかをオペレーティングシステムに対して宣言
する。1つしかバージョン空間定義表5を登録していな
いユーザに対しては、そのバージョン空間定義表5が使
用される。ユーザが現在使用しているバージョン空間定
義表5で指定されたファイルのバージョンだけが、その
ユーザにとって見えるファイルであり、他のバージョン
の存在は見えない。このように、あるユーザにとって見
えるファイルのバージョンの集合をバージョン空間と呼
ぶ。
【0014】ファイルシステム内には、バージョン管理
の対象となっているファイルと対象となっていないファ
イルの2種類がある。バージョン管理の対象となってい
ないファイルは、バージョン空間定義表5の中に記述す
る必要はなく、そのファイルはバージョン空間内に含ま
れる。バージョン空間定義表5の中にはファイル名が記
述されていないが、バージョン管理の対象となっている
ファイルは、そのファイルの最新のバージョンがバージ
ョン空間に含まれることとする。
【0015】さて、ユーザがコマンドのパラメータとし
てファイル名を指定したり、又はプログラム内のシステ
ムコールやライブラリコールの引数としてファイル名が
指定されたりした場合を考える。指定されたフィル名が
バージョン番号の明示的な指定を伴っていない場合には
、そのユーザが現在使用中のバージョン空間定義表5の
中で定義されたバージョン、すなわちそのユーザのバー
ジョン空間に含まれているファイルのバージョンがオペ
レーティングシステムによって使用される。指定された
ファイル名が明示的なバージョン番号の指定を伴ってい
る場合には、バージョン空間とは関係なく指定されたバ
ージョンが使用される。
【0016】以上述べたように、ユーザがいったんバー
ジョン空間定義表5の登録を行っておけば、後ではいち
いちバージョンを指定することなく希望のバージョンを
使用することが出来る。またバージョン番号を明示的に
指定して置きさえすれば、どのバージョンも使用するこ
とが出来る。さらに複数のバージョン空間定義表5を登
録して置くことにより、異なるバージョン空間を切り換
えながら使用することもできる。
【0017】各ファイルのバージョンには、ファイルの
バージョン本来の内容に加えてそのファイルが生成され
る元になったファイルの名前とバージョン番号を示す情
報4が含まれている。直接に生成する元になったファイ
ルがバージョン管理の対象となっているファイルであっ
た場合は、そのファイルの名前とバージョン番号が使用
される。直接に元になったファイルがバージョン管理の
対象となっていないファイルであった場合は、直接に元
になったファイルは一時的な中間ファイルとみなし、さ
らにそれを生成する元になったファイルの名前とバージ
ョン番号が使用される。バージョン管理の対象となって
いないファイルにも、そのファイルを生成する元になっ
たファイルの名前とバージョン番号を示す情報4は含ま
れている。
【0018】例えばオブジェクトモジュールの場合は、
それがコンパイルされる前のソースプログラムファイル
とインクルードファイルの情報が含まれている。またロ
ードモジュールの場合には、リンクする元になったオブ
ジェクトモジュールとライブラリファイルの情報が含ま
れている。ただし、オブジェクトモジュールのうちでバ
ージョン管理の対象以外のものについては、それがコン
パイルされる前のソースプログラムファイルとインクル
ードファイルの情報がロードモジュールに含まれる。ラ
イブラリファイルの場合には、元になったオブジェクト
モジュールの情報が含まれることになるが、通常はこれ
らのオブジェクトモジュールは一時ファイルとして作成
されることが多いので、さらに元になったソースプログ
ラムファイル,インクルードファイルの情報がライブラ
リの各メンバごとに含まれることになる。
【0019】新しいファイルが生成される場合には、2
つのケースがある。第1のケースは、バージョン空間定
義表5の中に対応するファイル名が存在しない場合であ
る。この時は、新しく生成されたファイルはバージョン
管理の対象外となる。第2のケースは、バージョン空間
定義表5の中に対応するファイル名のエントリが存在す
る場合(当然にファイル自体は存在しない)である。こ
の時、バージョン空間定義表5内のそのエントリのバー
ジョン番号は最新のバージョンを意味する特別な指定に
なっていなければならず、新しく生成されたファイルの
バージョン番号は1.0となる。
【0020】既存のファイルの更新が行われる場合には
、4つのケースがある。第1のケースは、バージョン空
間定義表5の中に対応するファイル名のエントリが存在
し、そのバージョン番号の指定が最新のバージョンの指
定になっている場合である。この時は、そのファイルの
新しいバージョンが生成されて更新後の内容が入れられ
、当該ユーザのバージョン空間には新しく生成されたバ
ージョンが含まれるようになる。第2のケースは、更新
対象のファイルがバージョン管理の対象外の場合(この
時には、そのファイル名はバージョン空間定義表5内に
存在しないことになる)である。この場合は古い内容は
保存されることなく、直接にファイルの更新が行われる
。第3のケースは、バージョン空間定義表5内に対応す
るファイル名のエントリが存在し、特定の番号のバージ
ョンが指定されている場合である。この時には、ファイ
ルの更新は禁止される。すなわち更新モードによるファ
イルのオープン時にエラーとなる。第4のケースは、バ
ージョン空間定義表5内に対応するファイル名のエント
リが存在しないが、対象のファイルはバージョン管理の
対象になっている場合である。このケースは、そのファ
イルが別のユーザによるバージョン管理の対象であるよ
うな時に発生する。この時にも、ファイルの更新は禁止
され、更新モードによるファイルのオープン時にエラー
となる。
【0021】例えば、ソースプログラムファイルx.c
,y.c,z.cはバージョン空間定義表5内に登録さ
れて、そのバージョンの指定は最新の指定になっており
、インクルードファイルu.hはバージョン空間定義表
5内に登録されて、そのバージョンの指定は特定のバー
ジョン番号(例えば1.3)になっており、ライブラリ
ファイルlib.aはバージョン管理の対象ではあるが
、当該ユーザのバージョン空間定義表5内には対応する
エントリを持たず、ロードモジュールxyzはバージョ
ン空間定義表5内に登録されて、そのバージョンの指定
は最新の指定になっているとする。これまでの説明から
見て、初めにソースプログラムファイルx.cがエディ
タによって生成される時には、バージョン番号1.0の
バージョン管理の対象となるファイルとして生成される
。ソースプログラムファイルy.c,z.cについても
同様である。ソースプログラムファイルx.cをコンパ
イルすると、このx.cのバージョンとしては自動的に
1.0が使用され、インクルードファイルu.hのバー
ジョンとしては自動的に1.3が使用される。コンパイ
ルした結果のオブジェクトモジュールx.oについては
、バージョン空間定義表5内に名前がないのでバージョ
ン管理の対象外のものとして生成される。ソースプログ
ラムファイルy.cとオブジェクトモジュールy.o,
ソースプログラムファイルz.cとオブジェクトモジュ
ールz.oについても同様である。オブジェクトモジュ
ールx.o,y.o,z.oとライブラリファイルli
b.aをリンクしてロードモジュールxyzが生成され
る時には、ライブラリファイルlib.aはバージョン
空間定義表5内にないので、その最新のバージョンが使
用され、ロードモジュールxyzはバージョン番号1.
0のバージョン管理の対象とするファイルとして生成さ
れる。なお、インクルードファイルu.h及びライブラ
リファイルlib.aの更新は禁止される。
【0022】次に、ソースプログラムファイルy.cを
エディタにより修正するとする。エディタがソースプロ
グラムファイルy.cを読み込む時には、最新のバージ
ョンである1.0が使用され、修正後に上記ファイルを
書き込むとバージョン1.1が自動的に作成されて、今
後はこれがバージョン空間内に見えるようになる。ソー
スプログラムファイルy.cをもう一度コンパイルし直
すと、ソースプログラムファイルy.cのバージョンと
しては1.1が使用され、オブジェクトモジュールy.
oは前に作成したものが新しいもので置換される。オブ
ジェクトモジュールx.o,y.o,z.oとライブラ
リファイルlib.aをリンクし直してロードモジュー
ルxyzを作成すると、新しいバージョンとして1.1
のものが作成される。この時、ロードモジュールxyz
のバージョン1.0には、それを作成するのに元になっ
たファイルの情報として、ソースプログラムファイルx
.cのバージョン1.0,ソースプログラムファイルy
.cのバージョン1.0,ソースプログラムファイルz
.cのバージョン1.0,インクルードファイルu.h
のバージョン1.3及び使用されたライブラリファイル
lib.aのバージョンが含まれている。ロードモジュ
ールxyzのバージョン1.1では、ソースプログラム
ファイルy.cのバージョンが1.1となっており、あ
とのファイルについてはバージョン1.0と同様である
【0023】
【発明の効果】以上のように、この発明のファイルのバ
ージョン管理方法によれば、ユーザが使用するファイル
の名前とバージョン番号の対応を記述したバージョン空
間定義表を使用することにより、ファイルのバージョン
の取扱いをユーザがほとんど意識することなく実行する
ことが出来、これによりユーザが必要とするバージョン
を使用したファイルの操作を容易に行うことが出来ると
いう優れた効果を奏する。
【0024】また、この発明の別の発明のファイルのバ
ージョン管理方法によれば、各ファイルのバージョンに
、ファイルの当該バージョンの内容以外に、そのファイ
ルが生成される元になったファイルの名前とバージョン
番号を示す情報を包含することにより、相互に関連のあ
るファイルのバージョンを統一的に管理することが出来
、これにより相互に依存関係のあるファイルのバージョ
ン管理を一元的に、かつ容易に行うことが出来るという
優れた効果を奏する。
【図面の簡単な説明】
【図1】この発明の実施例であるファイルのバージョン
管理方法を説明するための概念図である。
【図2】従来のファイルのバージョン管理方法を説明す
るための概念図である。
【符号の説明】
1    ファイル 2    ファイル 3    バージョン 4    ファイルが生成される元になったファイルの
名前とバージョン番号を示す情報 5    バージョン空間定義表 6    バージョン管理システム 7    バージョンのコピー

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】  電子計算機のオペレーティングシステ
    ムにおけるファイルのバージョン管理方法において、フ
    ァイルシステムのユーザごとに、このユーザが使用する
    ファイルの名前とバージョン番号の対応を記述したバー
    ジョン空間定義表を備え、このバージョン空間定義表を
    使用して、ユーザが毎回ファイルのバージョンを指定す
    ることなく、自己が希望するバージョンのファイルをア
    クセスすることを特徴とするファイルのバージョン管理
    方法。
  2. 【請求項2】電子計算機のオペレーティングシステムに
    おけるファイルのバージョン管理方法において、各ファ
    イルの中に含まれるバージョンの構成として、ファイル
    の当該バージョンの内容以外にそのファイルが生成され
    る元になったファイルの名前とバージョン番号を示す情
    報を包含する構成となし、上記情報を包含したバージョ
    ンを使用して、相互に依存関係にあるファイルのバージ
    ョン管理を統一的に行うことを特徴とするファイルのバ
    ージョン管理方法。
JP3106210A 1991-05-13 1991-05-13 ファイルのバージョン管理方法 Pending JPH04335428A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3106210A JPH04335428A (ja) 1991-05-13 1991-05-13 ファイルのバージョン管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3106210A JPH04335428A (ja) 1991-05-13 1991-05-13 ファイルのバージョン管理方法

Publications (1)

Publication Number Publication Date
JPH04335428A true JPH04335428A (ja) 1992-11-24

Family

ID=14427794

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3106210A Pending JPH04335428A (ja) 1991-05-13 1991-05-13 ファイルのバージョン管理方法

Country Status (1)

Country Link
JP (1) JPH04335428A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000293488A (ja) * 1999-04-07 2000-10-20 Nippon Steel Corp データ処理装置、データ処理システム、データ処理方法、及び記録媒体
JP2006277457A (ja) * 2005-03-30 2006-10-12 Fujitsu Ltd プログラム開発管理装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000293488A (ja) * 1999-04-07 2000-10-20 Nippon Steel Corp データ処理装置、データ処理システム、データ処理方法、及び記録媒体
JP2006277457A (ja) * 2005-03-30 2006-10-12 Fujitsu Ltd プログラム開発管理装置

Similar Documents

Publication Publication Date Title
US6757893B1 (en) Version control system for software code
US5339435A (en) Heterogenous software configuration management apparatus
US5905990A (en) File system viewpath mechanism
EP0811193B1 (en) Graphical environment for managing and developing applications
US6072953A (en) Apparatus and method for dynamically modifying class files during loading for execution
EP0640913B1 (en) Multilingual standard resources
US6526441B2 (en) Input/output device information management system for multi-computer system
US20030093420A1 (en) Method and system for retrieving sharable information using a hierarchically dependent directory structure
JPH04191941A (ja) オブジェクト管理システム
JPH06266563A (ja) 複数同時オブジェクト・バージョンをサポートする効率的ルータ
JP3727076B2 (ja) プログラム管理方法および装置
JPH04172542A (ja) データベース管理システム
JP2002508565A (ja) システム呼出しの変換方法
US20040194053A1 (en) Configuration file processing
US5963955A (en) Bridge for exporting and importing objects between object oriented programming environments
Clemm The odin system
JPH04335428A (ja) ファイルのバージョン管理方法
JPH08110869A (ja) ファイルシステム
GB2377045A (en) Configuration manager
JPH05313969A (ja) ファイル一覧表示方法
US6311227B1 (en) Procedure calling method
Korn ksh: An extensible high level language
JP3169596B2 (ja) データベース管理装置
JPH02146633A (ja) 表示パネル生成方法
JPH0527951A (ja) プログラム群管理システム