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