RCSは、Revision Control Systemの略でLinuxで使うことの出来るバージョン管理ソフトのひとつです。バージョン管理ソフトとしてはかなり古いものですが、そのシンプルさから今でも利用されています。
RCSの基本と使い方
RCSはファイルの変更履歴を管理し、過去のバージョンへの復元を可能にします。シンプルな設計で、基本的なバージョン管理の概念を理解するのに役立ちます。
例えば、config(設定)ファイルなどの履歴を残しておきたい場合に便利です。
RCSディレクトリの作成
まず、管理する対象ファイルのあるカレントディレクトリで以下のコマンドを実行し、RCSディレクトリを作成します。
mkdir RCS
ファイルのチェックイン
次に、以下のコマンドでファイルをRCS管理対象にします。
ci -i test.txt
このコマンドを実行すると、RCSはファイルの初期バージョンを保存し、その後の変更を追跡できるようになります。
ファイルのチェックアウトとロック
ファイルを編集する際には、以下のコマンドでチェックアウトし、ロックします。
co -l test.txt
これにより、他のユーザーが同時にファイルを編集することを防ぎ、変更の競合を避けることができます。
変更のコミットとロック解除
編集が終わったら、以下のコマンドで変更をコミットし、ロックを解除します。
ci -u test.txt
この操作により、現在の変更が新しいバージョンとしてRCSに保存されます。
差分の表示
現在の編集ファイルと最終バージョンとの差分を表示するには、以下のコマンドを実行します。
rcsdiff -u test.txt
特定のバージョンとの差分を表示したい場合は、以下のようにバージョン番号を指定します。
rcsdiff -u -r1.1 text.txt
これらの基本的なコマンドを理解することで、RCSを使ったバージョン管理を始めることができます。
RCSが選択肢になる場面
gitやsvnなどで大掛かり(?)に管理するまでもない1ファイルだけを管理したい場合には
非常に便利です。
かなり実装が古いんだろうと感じるのが
チェックインやチェックアウトやロックですね。
ソースファイルをロックされたまま技術者が帰宅してしまってソースがさわれなくなった!ってことも
昔のバージョン管理ソフトあるあるだったように思います。