web-dev-qa-db-ja.com

ソース管理が発明されたのはいつですか?

私は多くのバージョン管理システムを知っています:CVS、SVN、TFSなど...

私は非常に最初の「改訂管理/バージョン管理システム」を探して、さまざまな矛盾する答えを見てきました。

ソース管理が発明されたのはいつですか?誰がそれを発明したのですか?それは何と呼ばれましたか?

20
P.Brian.Mackey

こちらが、ビデオ形式の主要プレーヤーの かなりまともなタイムライン です(音声なし)。

それは、SCCSが最初に、約9年のマージンであったことを示唆しています。

http://i.stack.imgur.com/wcAWD.png

このブログ とその結果のコメントによって証明されているように、そこには多くの欠落があります。

14
pdr

1981年、テキサス州オースティンのCharter Informationで夏の仕事をしました。彼らは、以前はマサチューセッツ州ウォーバーンの商業情報公社でした。彼らはシグマ7にフィールドアップグレードされたゼロックスシグマ6を実行しました。彼らはソースコード管理にSPUD(Source Program Update)と呼ばれるものを使用しました。それはテープベースでした。

私は「バイセンテニアルSPUDテープ」を定期的にマウントし、そのテープのコードの一部をモッドデッキで作業しました。 1976年に作成されたため、「200周年SPUDテープ」と呼ばれていました。古いテープがあり、SPUDが1976よりも前に遡ったことを示しています。

UT Austin(1973-1981))の学生の間、私はCDC 6600以降のメインフレーム用のControl Data Corporationからの2つのソースコード管理プログラムであるMODIFYとUPDATEに出くわしました。彼らが最初に出たとき、しかし私はそれらが(記憶が私に役立つなら)1960年代後半に出てきた6600のすぐ後に出たと思う。

IBMには他の誰よりも前に何かがあったのではないかと思いますが、IBMメインフレームの歴史についてはまったく知りません。

3
John R. Strohm

[〜#〜] iebupdte [〜#〜] プログラムは、もともとIBMのOS/360システム用に作成され、1962年に遡ります [〜#〜] sccs [ 〜#〜] 。その目的は、一連の変更を一連の入力ソースプログラムに適用し、一連の変更されたソースプログラムを作成することです。すべてのソースコードは、80列の "デッキ" パンチされたカード 、またはそれらに類似したファイルとして管理されていました。これらのソースプログラムデッキは、各行またはカードの固定列セットに「シーケンス番号」がありました( [〜#〜] cobol [〜#〜] 列1の左側にあると指定しました-6、それ以外のほとんどすべては、列73-80の右側にあると想定しました。シーケンス番号は行ごとに増やす必要がありましたが、ほとんどのソースコードは10秒、100秒、または1000秒ずつ増加して、2行間の整数のスペースに後で挿入できるようにしました。

典型的なIEBUPDTEコントロールデッキは次のようになります。

./ CHANGE NAME=PROG001
         PROGRAM XYZZY                                                  00005000
./ DELETE SEQ1=9000,SEQ2=15000
         DO I=1,10                                                      00026000
./ CHANGE NAME=PROG002
         J=256                                                          00092000
./ ENDUP

これにより、2つのソースファイル「PROG001」と「PROG002」が変更され、行番号「5000」が置き換えられ(多くの場合、「number by 1000」の練習に従う5行目)、PROG001の行9000から15000が削除され、PROG002の行92000が置き換えられます。 。

最も単純なレベルでは、それはソース管理の定義です。 Unixの人々はそれを patch と同じように認識しますが、暗黙ではなく明示的な番号付けを使用します。コントロールデッキのセットを入力プログラムに順番に適用し、それらのセットをまとまりのあるディスクファイル(a Partitioned Dataset )として保存するのが一般的でした。 [〜#〜] cvs [〜#〜] および [〜#〜] rcs [〜#〜],vファイルに保存します。 IBMは Program Temporary Fixes (PTFs)と呼ばれるコードパッチを、単一の関連するチェンジセットの一部としてファイルを変更する大きなコントロールデッキの形式で頻繁に配信します Subversion および- Git ユーザーはなじみがあると思います。

2
Ross Patterson