ファイルの修正履歴を残せて、それらをあとから参照できるように するツールをバージョン管理システムという。 VC(Version Control)、SCM(Source Code Management/Software Configuration Management) などの呼称が用いられることが多い。
バージョン管理システムのはじまり。 単一ファイルシステム上で用いる。
使用形態はSCCSと同様。多くのシステムに移植され 基本的なバージョン管理システムとして普及した。 基本的には1つのファイルのみ管理する。
RCSをベースに、複数ファイルを集合として管理したり、 ネットワーク越しに複数人で使えるようにしたもの。
CVSの欠点を補ない、すべてを「ディレクトリ+ファイル」 という単純概念で作り直したもの。
Linuxカーネル開発のために作られた。 リポジトリ(履歴保管庫)を分散できる。
Linuxカーネル開発利用を目指して作られたが不採用。 Python で書かれていて移植性が高い。高速。
Pythonで書かれた柔軟なDVCS。
その他多数ある。 共同開発では、CVSが用いられていたが最近では Subversion/Mercurial/git が利用されることが多い。
ここではMercurialを用いたファイル更新管理を覚える。
このリポジトリをコピーして開発・公開してみよ。
hg clone http://roy/~yuuji/2022/inet/vc/jk
公開は、公開したいディレクトリ(~/public_html
以下のどこか)に hgweb.cgi
をコピーして chmod +x し、
import os os.environ["LC_CTYPE"] = "ja_JP.UTF-8" application = hgweb("/home/irhome/c10x/c10xzzz/hgdir", "タイトル")
のように、該当ディレクトリとタイトルを含めて書き換える。