Provided by: manpages-ja_0.5.0.0.20221215+dfsg-1_all 

名称
rcs - RCS ファイルの属性を変更する
書式
rcs options file ...
解説
rcs は、RCS ファイルの新規作成および RCS ファイルの属性変更を行います。 RCS ファイルは、複数のリビジョ ン、アクセスリスト、変更履歴、 内容記述、制御属性からなります。 rcs コマンドが実行できるのは、 実行した ユーザが RCS ファイルのアクセスリストに登録されているか、 アクセスリストが空であるか、ユーザが RCS ファイ ルの所有者であるか、 スーパユーザであるか、あるいは -i オプションが指定されている場合に限られます。 RCS 拡張子にマッチするファイル名は RCS ファイルであるとみなし、その他 のファイル名はワークファイルである とみなします。詳しくは、 ci(1) を参照してください。リビジョン番号は ci(1) に記述されている形式を用いま す。
オプション
-i 新たな RCS ファイルを作成し、初期化します。ただし、リビジョンは作成しません。 指定されたファイル名 にディレクトリ名が含まれていない場合、 rcs はまずカレントディレクトリにある ./RCS ディレクトリに ファイルを作成しよう と試みます。これに失敗したら、カレントディレクトリに作成しようと試みます。 も しすでに RCS ファイルが存在した場合はエラーとなります。 -alogins RCS ファイルのアクセスリストに logins で指定したユーザ名を追加します。 logins は、コンマで区切った ユーザ名のリストです。 -Aoldfile oldfile で指定した RCS ファイルのアクセスリストに登録されているユーザ名を、 対象の RCS ファイルの アクセスリストに追加します。 -e[logins] logins で指定したユーザ名を、RCS ファイルのアクセスリストから消去します。 logins が省略された場合 は、アクセスリスト全体を消去します。 -b[rev] rev をデフォルトの枝とします。 rev が省略された場合、デフォルト枝は 幹上で最も大きな番号を持つ枝に なります。 -cstring コメント開始文字列を string に設定します。 最初に ci を起動した時、あるいは rcs -i に -c オプショ ンを指定しなかった時は、コメント開始文字列は ワークファイルの拡張子から自動的に推測されます。 通常、RCS はチェックアウト ( co(1) 参照) 時の記録行を挿入する際に、 $Log$ 行の行頭部を使用するの で、このオプションは現在廃止の方向にあります。 しかしながら、RCS の古いバージョンでは、 $Log$ 行の 行頭部ではなくコメント開始文字列を使用しているので、 RCS の新旧両方のバージョンのファイルを使用す る場合は、 そのコメント開始文字列が $Log$ 行の行頭部と一致するようにしなければなりません。 -ksubst デフォルトのキーワード展開方式を subst に設定します。キーワード展開の効果については co(1) に記述し てあります。 co, rcsdiff, rcsmerge に -k オプションを指定することで、デフォルトの展開方式を無効に することができます。 rcs -kv を用いるときは注意してください。なぜなら、 -kv をデフォルトにすると co -l あいいれなくなるからです。 rcs -kkv によって、通常のデフォルト値に戻すことができます。 -l[rev] リビジョン rev をロックします。 rev が枝を示す場合、枝上の最新のリビジョンがロックされます。 rev が省略された場合、デフォルト枝上の最新のリビジョンがロックされます。 ロックすることにより、そのリ ビジョンのファイルに対して複数の人が 変更することを防止できます。別の人が既にロックしている場合、 rcs -u により、ロックを解除することができます(下記参照)。 -u[rev] リビジョン rev をロック解除します。 rev が枝を示す場合、枝上の最新のリビジョンがロック解除されま す。 rev が省略された場合、コマンドを実行したユーザがロックした 最新のリビジョンがロック解除されま す。 通常、ロックしたユーザのみがロックを解除することができます。 他のユーザがロックを解除しようと すると、 ロックしたユーザへメールが送信されます。 メールにはロックを解除する理由等を書いた コメン トを付加します。コメントはロックを解除しようとしたユーザが入力し、 ファイル終端あるいは . のみを 含む行を入力することで終了します。 -L ロックを厳格に行なうモード (以下、厳格モード) に設定します。 厳格ロックを指定すると、RCS ファイル の 所有者であっても、ロックしているファイルをチェックインすることが できなくなります。 複数のユー ザで共有するようなファイルは本モードで利用すべきです。 -U ロックを厳格には行なわないモード (以下、非厳格モード) に設定します。 非厳格ロックを指定すると、RCS ファイルの所有者はロックすることなく、 新しいリビジョンをチェックインすることができます。複数の ユーザで共有するファイルは本モードで使用すべきではありません。 デフォルトのロックモードを厳格にす るか非厳格にするかは、RCS システムを インストールしたシステム管理者が決めますが、通常は厳格モード です。 -mrev:msg リビジョン rev のログメッセージを msg に置換します。 -M ロックしたユーザ以外のユーザがロックを解除した際に、メールを送りません。 これは使用を簡便にする目 的のオプションではありません。他の方法により ユーザに警告を行うようなプログラムを使用し、 rcs -u を単に低いレベルのロック解除の目的で使用するような場合のために 用意されています。 -nname[:[rev]] 枝またはリビジョン rev にシンボリック名 name を関連付けます。 : も rev も省略した場合、シンボリッ ク名 name は削除されます。 name がすでに別の リビジョンに関連付けられていた場合はエラーとなりま す。 rev がシンボリック名の場合も name との関連付けは番号によって行われます。枝番号に . を付加し たものは、その枝での最新のリビジョンを示します。 : だけで rev を省略した場合、デフォルト枝(通常は 幹)の最新のリビジョンが関連付けられます。 たとえば、 rcs -nname: RCS/* はすべての RCS ファイルの最 新のリビジョンに対してシンボリック名 name を関連付けます。一方、 rcs -nname:$ RCS/* は各 RCS ファ イルに対応したワークファイル中のキーワードに含まれる リビジョン番号と name を関連付けます。 -Nname[:[rev]] -n と同様に動作します。ただし、同じ name が別のリビジョンに関連付けられていてもエラーとはせず、 関 連付けをしなおします。 -orange range で指定したリビジョンを削除します。 range がただ 1 つのリビジョン番号ならば、そのリビジョンを 削除します。 range に枝番号が含まれれば、その枝の最新のリビジョンを削除します。 rev1:rev2 形式の範 囲指定では、同じ枝上の rev1 から rev2 までのすべてのリビジョンが削除されます。 :rev は枝の開始から rev までのリビジョンを、 rev: は同じ枝上の rev 以降のリビジョンのすべてを削除します。 削除されるリ ビジョンにロックや枝があってはいけません。 -q 診断メッセージは表示されません。 -I 対話モードで動作します。たとえ標準入力が端末でなくても、ユーザに対して 問い合わせを行います。 -sstate[:rev] リビジョン rev の状態を state にします。 rev が枝番号なら、その枝の最新のリビジョンの状態を変更し ます。 rev が省略されたなら、デフォルト枝の最新リビジョンを変更します。 state としては自由な識別子 を指定できます。一般に用いられる識別子としては、 Exp (experimental: 実験的)、 Stab (stable: 安定し た)、 Rel (released: リリースした)があります。デフォルトでは、 ci(1) は状態を Exp にします。 -t[file] RCS ファイルの内容記述テキストをファイル file の内容で置換します。すでに存在していた内容記述は削除 されます。ファイル名は - で始まってはいけません。 file が省略された場合、 テキストは標準入力から読 み込まれ、ファイル終端または . のみを含む行で終了します。可能ならば、テキストの入力を 促すプロン プトが表示されます( -I オプションの項を参照)。 -i オプションを指定すると、 -t オプションが指定され ていなくても内容記述テキストの入力を求めます。 -t-string RCS ファイルの内容記述テキストを文字列 string で置換します。すでに存在していた内容記述は削除されま す。 -T リビジョンが削除されない限り、RCS ファイルの変更時刻を保存します。 このオプションを使うことによ り、RCS ファイルの中のワークファイルの コピーによって生ずる make(1) の依存関係に伴う必要以上の再コ ンパイルを防ぐことができます。 このオプションを使用する際には注意が必要です。本当に再コンパイルが 必要な 場合にも再コンパイルされない場合が生じます。つまり、RCS ファイルへの変更が ワークファイル中 のキーワードの変更を意味する場合があるからです。 -V RCS システムのバージョン番号を表示します。 -Vn RCS システムのバージョン n のエミュレーションを行います。詳細は co(1) を参照してください。 -xsuffixes RCS ファイル拡張子を suffixes に指定します。詳しくは ci(1) を参照してください。 -zzone デフォルトのタイムゾーンとして zone を使用します。 このオプションは何の効果もありません。他の RCS コマンドとの互換性を保つ ために存在します。 rcs コマンドの将来予定されている拡張との互換性を維持するには、 少なくともひとつのオプションを明示的に指定 する必要があります。
互換性
-brev オプションを指定すると、 RCS バージョン 3 以前では処理できない RCS ファイルが生成されます。 -ksubst オプション( -kkv を除く)を指定すると、 RCS バージョン 4 以前では 処理できない RCS ファイルが生成 されます。 バージョン n の RCS で処理できる RCS ファイルを生成するために rcs -Vn を利用することができます。これによ り、バージョン n で処理できない情報を削除することができます。 バージョン 5.5 以前の RCS は -x オプションをサポートしません。RCS ファイルの拡張子としては ,v が用いられ ます。
関連ファイル
rcs は ci(1) とほぼ同様のファイル群にアクセスします。ただし、アクセスは すべて実効ユーザ ID によって行わ れます。 また、ワークファイルやそのディレクトリには書き込みを 行いません。リビジョン番号として $ を指定し た場合を除き、ワークファイルを読むこともありません。
環境変数
RCSINIT コマンドライン引数に先立って与えられるオプションを指定します。 各オプションは空白で区切って指定し ます。詳しくは ci(1) を参照してください。
診断
RCS ファイル名およびひとつ古い(outdated)リビジョン番号が診断出力として 表示されます。 すべての処理が成功 した場合に限り終了ステータス 0 を返します。
作者
Author: Walter F. Tichy. Manual Page Revision: 1.5; Release Date: 1999/08/27. Copyright © 1982, 1988, 1989 by Walter F. Tichy. Copyright © 1990, 1991, 1992, 1993, 1994, 1995 Paul Eggert.
関連項目
rcsintro(1), co(1), ci(1), ident(1), rcsclean(1), rcsdiff(1), rcsmerge(1), rlog(1), rcsfile(5) Walter F. Tichy, RCS--A System for Version Control, Software--Practice & Experience 15, 7 (July 1985), 637-654.
バグ
システムクラッシュ等の大惨事があると、RCS はセマフォファイルを 残してしまうため、後に RCS を実行しようと すると、RCS ファイルが使用中であると 警告します。 これを直すにはセマフォファイルを消去する必要がありま す。 通常、セマフォファイル名前は , で始まるか、 _ で終了します。 以前の版の rcs では -o オプションにおけるリビジョンの区切りは : ではなく - でした。 しかし、これはシンボ リック名が - を含んでいるときに混乱を生じます。 従来の版との互換性のため rcs -o は - を用いた記法もサポー トしますが、 この記法を用いた場合は警告メッセージを表示します。 シンボリック名が指しているリビジョンが存在するとは限りません。例えば、 -o オプションによってリビジョンが 削除されてもそれを指すシンボリック名は削 除されずに残っています。シンボリック名を削除するには -n オプショ ンを用いる必要があります。