Manpages

名 称

ci − RCS フ ァ イ ル に リ ビ ジ ョ ン を チ ェ ッ ク イ ン す る

書 式

ci [options] file ...

解 説

ciRCS フ ァ イ ル に 新 た な リ ビ ジ ョ ン を 格 納 し ま す 。 引 数 の う ち 、 RCS フ ァ イ ル の 拡 張 子 形 式 に 一 致 す る フ ァ イ ル 名 を RCS フ ァ イ ル と み な し ま す 。 そ れ 以 外 の フ ァ イ ル 名 は 、 新 た な リ ビ ジ ョ ン を 含 ん だ ワ ー ク フ ァ イ ル と み な し ま す 。 ci は ワ ー ク フ ァ イ ル の 内 容 を 対 応 し た RCS フ ァ イ ル に 格 納 し ま す 。 も し ワ ー ク フ ァ イ ル の み が 指 定 さ れ た な ら 、 ci は サ ブ デ ィ レ ク ト リ RCS 、 次 に ワ ー ク フ ァ イ ル が あ る デ ィ レ ク ト リ の 順 に 対 応 す る RCS フ ァ イ ル を 検 索 し ま す 。 詳 細 は 後 述 の フ ァ イ ル 名 規 則 の 項 を 参 照 し て く だ さ い 。

ci が 動 作 す る に は 、 ci を 起 動 し た ユ ー ザ が RCS フ ァ イ ル の ア ク セ ス リ ス ト に 登 録 さ れ て い る か 、 ア ク セ ス リ ス ト が 空 で あ る か 、 ユ ー ザ が RCS フ ァ イ ル の 持 ち 主 で あ る か 、 あ る い は ス ー パ ユ ー ザ で あ る 必 要 が あ り ま す 。 す で に 存 在 す る 枝 (branch) に 新 し い リ ビ ジ ョ ン を 追 加 す る に は 、 枝 の 先 端 (tip) リ ビ ジ ョ ン が 、 追 加 し よ う と す る ユ ー ザ に よ っ て ロ ッ ク さ れ て い な け れ ば な り ま せ ん 。 ロ ッ ク さ れ て い な い 場 合 、 新 た な 枝 の み 作 成 可 能 で す 。 非 厳 格 モ ー ド ( rcs(1) 参 照 ) の 場 合 、 フ ァ イ ル の 所 有 者 に 対 し て は こ の 制 限 は あ り ま せ ん 。 他 人 が 行 っ て い る ロ ッ ク は 、 rcs コ マ ン ド に よ っ て 解 除 で き ま す 。

−f オ プ シ ョ ン が 指 定 さ れ て い な け れ ば 、 ci は 追 加 し よ う と す る リ ビ ジ ョ ン と 直 前 の リ ビ ジ ョ ン と の 比 較 を 行 い ま す 。 違 い が な か っ た 場 合 、 新 た な リ ビ ジ ョ ン を 作 成 す る か わ り に 、 ワ ー ク フ ァ イ ル を 元 の リ ビ ジ ョ ン の も の に 復 元 し ま す 。 復 元 す る と き に は 、 ci は い っ た ん ワ ー ク フ ァ イ ル を 削 除 し 、 ロ ッ ク を 解 除 し ま す 。 ci −l は ロ ッ ク し 、 ci −u は ロ ッ ク を 解 除 し ま す 。 こ れ ら の オ プ シ ョ ン が 指 定 さ れ て い れ ば 、 あ た か も 直 前 の リ ビ ジ ョ ン に 対 し て co −l ま た は co −u を 実 行 し た か の よ う に し て 直 前 の リ ビ ジ ョ ン の 内 容 を 取 り 出 し ま す 。 復 元 が 行 わ れ る 場 合 、 −n−s オ プ シ ョ ン は 復 元 さ れ る リ ビ ジ ョ ン に 対 し て 作 用 し ま す 。 リ ビ ジ ョ ン を 格 納 す る と き に 、 ci は ロ グ メ ッ セ ー ジ の 入 力 を 促 す プ ロ ン プ ト を 表 示 し ま す 。 ロ グ メ ッ セ ー ジ は 、 そ の リ ビ ジ ョ ン の 変 更 点 の 要 約 で す 。 フ ァ イ ル 終 端 (EOF) あ る い は 、 ピ リ オ ド . の み か ら な る 行 に よ っ て 入 力 を 完 了 さ せ ま す 。 複 数 の フ ァ イ ル が 登 録 さ れ る 場 合 、 ci は 前 に 入 力 し た ロ グ メ ッ セ ー ジ を 再 利 用 す る か ど う か を 聞 い て き ま す 。 も し 標 準 入 力 が 端 末 で な け れ ば 、 ci は 確 認 を 行 わ ず 、 登 録 さ れ る す べ て の フ ァ イ ル に 対 し て 同 じ ロ グ メ ッ セ ー ジ を 使 用 し ま す 。 −m オ プ シ ョ ン の 項 も 参 照 し て く だ さ い 。 も し RCS フ ァ イ ル が 存 在 し な け れ ば 、 ci は 新 規 に RCS フ ァ イ ル を 作 成 し 、 ワ ー ク フ ァ イ ル の 内 容 を 初 期 リ ビ ジ ョ ン (デ フ ォ ル ト で は 1.1) と し て 格 納 し ま す 。 そ の 場 合 、 ア ク セ ス リ ス ト は 空 に 初 期 化 さ れ ま す 。 初 期 リ ビ ジ ョ ン を 格 納 す る と き は 、 ロ グ メ ッ セ ー ジ の か わ り に フ ァ イ ル の 内 容 を 記 述 し た テ キ ス ト を 入 力 し ま す (後 述 の −t オ プ シ ョ ン の 項 を 参 照 し て く だ さ い )。 登 録 す る リ ビ ジ ョ ン 番 号 ( rev ) は 、 −f, −i, −I, −j, −k, −l, −M, −q, −r, −u の オ プ シ ョ ン の う ち の い ず れ か で 指 定 す る こ と が で き ま す 。 rev は シ ン ボ ル 、 数 値 、 あ る い は 両 者 の 組 み 合 わ せ た も の で す 。 rev で 使 用 す る シ ン ボ ル 名 は 定 義 済 み で な け れ ば な り ま せ ん ; チ ェ ッ ク イ ン 時 に シ ン ボ ル 名 を 割 り 当 て る 方 法 に つ い て は −n お よ び −N を 参 照 し て 下 さ い 。 も し rev$ な ら ば 、 ci は ワ ー ク フ ァ イ ル 中 の キ ー ワ ー ド か ら リ ビ ジ ョ ン 番 号 を 決 定 し ま す 。 も し rev が ピ リ オ ド か ら 始 ま る 場 合 、 デ フ ォ ル ト の 枝 (通 常 は 幹 (trunk)) に 格 納 さ れ ま す 。 も し rev が 枝 番 号 に 続 い て ピ リ オ ド で あ る 場 合 、 当 該 枝 の 最 新 の リ ビ ジ ョ ン が 使 用 さ れ ま す 。

rev が リ ビ ジ ョ ン 番 号 の 場 合 、 そ れ は 登 録 す る 枝 の な か で 最 も 大 き な 値 で あ る 必 要 が あ り ま す 。 さ も な け れ ば 、 新 し い 枝 を 作 成 す る 必 要 が あ り ま す 。

rev が リ ビ ジ ョ ン 番 号 で は な く 枝 番 号 の 場 合 、 そ の 枝 に 対 す る 新 し い リ ビ ジ ョ ン が 作 成 さ れ ま す 。 新 し い リ ビ ジ ョ ン 番 号 は 、 そ の 枝 の 先 端 リ ビ ジ ョ ン 番 号 に 1 を 加 え た も の と な り ま す 。 も し rev が 存 在 し な い 枝 番 号 な ら ば 、 新 た な 枝 が 作 成 さ れ 、 初 期 リ ビ ジ ョ ン と し て rev.1 が 作 成 さ れ ま す 。

rev が 省 略 さ れ た 場 合 、 ci は ユ ー ザ が 行 っ た 最 後 の ロ ッ ク か ら リ ビ ジ ョ ン 番 号 を 決 定 し ま す 。 ユ ー ザ が あ る 枝 の 先 端 リ ビ ジ ョ ン を ロ ッ ク し て い る 場 合 は 、 新 た な リ ビ ジ ョ ン が そ の 枝 に 追 加 さ れ ま す 。 新 し い リ ビ ジ ョ ン 番 号 は 先 端 リ ビ ジ ョ ン 番 号 に 1 を 加 え た も の に な り ま す 。 ユ ー ザ が 先 端 で は な い リ ビ ジ ョ ン を ロ ッ ク し て い る 場 合 は 、 新 た な 枝 が 作 成 さ れ ま す 。 新 た な 枝 番 号 は 、 ロ ッ ク 対 象 の リ ビ ジ ョ ン の 最 も 大 き な 枝 番 号 に 1 を 加 え た も の に な り ま す 。 デ フ ォ ル ト で は 、 新 た な 枝 や リ ビ ジ ョ ン の 番 号 は 1 と な り ま す 。

rev が 省 略 さ れ 、 ユ ー ザ が ロ ッ ク を 行 わ ず 、 そ の フ ァ イ ル の 所 有 者 で あ り 、 か つ ロ ッ ク が 非 厳 格 モ ー ド で あ る な ら 、 デ フ ォ ル ト の 枝 (通 常 は 幹 (trunk); rcs(1)−b オ プ シ ョ ン の 項 を 参 照 ) に 新 た な リ ビ ジ ョ ン が 作 成 さ れ ま す 。 例 外 : 幹 (trunk) に お い て リ ビ ジ ョ ン を 追 加 す る こ と は で き ま す が 、 途 中 に 挿 入 す る こ と は で き ま せ ん 。

オ プ シ ョ ン

−rrev リ ビ ジ ョ ン

rev を チ ェ ッ ク イ ン し ま す 。

−r

−r オ プ シ ョ ン を リ ビ ジ ョ ン 抜 き で 使 用 し た 場 合 、 ci に と っ て 特 別 な 意 味 が 有 り ま す 。 他 の RCS コ マ ン ド で は −r オ プ シ ョ ン を 単 体 で 使 用 す る と デ フ ォ ル ト 枝 の 最 新 の リ ビ ジ ョ ン を 指 定 し ま す 。 し か し 、 ci で は ロ ッ ク 解 除 、 ワ ー ク フ ァ イ ル 削 除 を 行 い 、 シ ェ ル の エ イ リ ア ス や ス ク リ プ ト に よ り デ フ ォ ル ト と さ れ て し ま っ た −l−u オ プ シ ョ ン の 効 果 を 打 ち 消 し ま す 。

−l[rev]

−r と 同 様 の 動 作 を 行 っ た あ と 、 co −l と 同 様 の 動 作 も 行 い ま す 。 す な わ ち 、 登 録 さ れ た リ ビ ジ ョ ン は 即 座 に ロ ッ ク さ れ 、 チ ェ ッ ク ア ウ ト さ れ ま す 。 こ れ は 、 リ ビ ジ ョ ン を チ ェ ッ ク イ ン し て さ ら に 編 集 を 続 け た い 場 合 に 便 利 で す 。

−u[rev]

−l と ほ ぼ 同 様 の 動 作 を し ま す が 、 登 録 さ れ た リ ビ ジ ョ ン は ロ ッ ク さ れ ま せ ん 。 こ れ は 、 チ ェ ッ ク イ ン し た リ ビ ジ ョ ン の 内 容 を す ぐ に 参 照 し た い 場 合 に 便 利 で す 。

−l 、 リ ビ ジ ョ ン 無 し −r, −u オ プ シ ョ ン は 、 最 後 に 指 定 し た も の の み が 効 力 を 持 ち ま す 。 た と え ば 、 ci −u −rci −r と 等 価 で す 。 リ ビ ジ ョ ン 無 し −r−u に 優 先 す る か ら で す 。

−f[rev] 強 制 的 に 登 録 し ま す 。 直 前 の リ ビ ジ ョ ン と の 違 い が な い 場 合 に も 、 新 し い リ ビ ジ ョ ン と し て 登 録 し ま す 。
−k
[rev] リ ビ ジ ョ ン 番 号 な ど を ロ ー カ ル に 算 出 せ ず に 、 ワ ー ク フ ァ イ ル か ら キ ー ワ ー ド を 探 し 、 リ ビ ジ ョ ン 番 号 、 作 成 日 時 、 状 態 、 作 者 ( co(1) を 参 照 ) を 検 索 し 、 登 録 さ れ る リ ビ ジ ョ ン に 割 り 当 て ま す 。 さ ら に 、 ci を 起 動 し た ユ ー ザ 名 と 実 際 に チ ェ ッ ク イ ン さ れ た 日 付 を 含 む デ フ ォ ル ト の ロ グ メ ッ セ ー ジ を 作 成 し ま す 。 本 オ プ シ ョ ン は 、 配 布 さ れ た ソ フ ト ウ ェ ア を 登 録 す る の に 便 利 で す 。 複 数 の サ イ ト に 配 布 さ れ た リ ビ ジ ョ ン は 、 元 の リ ビ ジ ョ ン 番 号 、 作 成 日 付 、 状 態 、 作 者 を 保 存 す る た め に 、 −k オ プ シ ョ ン を 使 っ て 登 録 す る べ き で す 。 ワ ー ク フ ァ イ ル の キ ー ワ ー ド か ら 取 り 出 し た 値 と ロ グ メ ッ セ ー ジ は 、 −d, −m, −s, −w や 、 他 の リ ビ ジ ョ ン 番 号 を 生 成 す る よ う な オ プ シ ョ ン に よ り 変 更 す る こ と が で き ま す 。
−q
[rev] 沈 黙 モ ー ド で す 。 診 断 メ ッ セ ー ジ を 表 示 し ま せ ん 。 直 前 の リ ビ ジ ョ ン か ら 変 更 が な い 場 合 、 −f オ プ シ ョ ン を 指 定 し て い な け れ ば 、 登 録 を 行 い ま せ ん 。
−i
[rev] 最 初 の チ ェ ッ ク イ ン ; RCS フ ァ イ ル が 既 に 有 る 時 に は エ ラ ー 報 告 し ま す 。 特 定 の ア プ リ ケ ー シ ョ ン の レ ー ス 状 態 を 避 け ま す 。
−j
[rev] 初 期 化 を 行 わ ず 、 チ ェ ッ ク イ ン し ま す ; RCS フ ァ イ ル が 無 い と エ ラ ー 報 告 し ま す 。
−I
[rev] 対 話 モ ー ド で 動 作 し ま す 。 た と え 標 準 入 力 が 端 末 で な く て も 、 ユ ー ザ に 対 し て 問 い 合 わ せ を 行 い ま す 。
−d
[date] チ ェ ッ ク イ ン 日 付 と し て 指 定 さ れ た date を 用 い ま す 。 dateco(1) で 記 述 さ れ た 自 由 形 式 で 指 定 す る こ と が で き ま す 。 こ れ は 、 チ ェ ッ ク イ ン 日 時 を ご ま か し た い 場 合 や 、 日 付 キ ー ワ ー ド が ワ ー ク フ ァ イ ル に な い に も か か わ ら ず −k オ プ シ ョ ン を 使 い た い 場 合 に 便 利 で す 。 date が 指 定 さ れ な か っ た 場 合 、 ワ ー ク フ ァ イ ル の 最 終 更 新 日 付 が 用 い ら れ ま す 。
−M
[rev] 作 成 さ れ る ワ ー ク フ ァ イ ル の 最 終 更 新 日 付 を 、 取 り 出 さ れ た リ ビ ジ ョ ン の 日 付 に し ま す 。 た と え ば 、 ci −d −M −u f は 、 f の 内 容 が キ ー ワ ー ド 置 換 に よ り 変 更 さ れ た 場 合 も 最 終 更 新 日 時 を 変 更 し ま せ ん 。 本 オ プ シ ョ ン を 指 定 す る と make(1) に 影 響 を 与 え る の で 、 注 意 し て 使 用 す る 必 要 が あ り ま す 。

−mmsg チ ェ ッ ク イ ン す る す べ て の リ ビ ジ ョ ン の ロ グ メ ッ セ ー ジ と し て

msg

用 い ま す 。 慣 習 的 に # で 始 ま る ロ グ メ ッ セ ー ジ は コ メ ン ト で あ り 、 GNU Emacs の vc パ ッ ケ ー ジ の よ う な プ ロ グ ラ ム は こ れ を 無 視 し ま す 。 ま た 、 {clumpname} (の 後 に 空 白 が 続 く ) ロ グ メ ッ セ ー ジ は 可 能 で あ れ ば ま と め ら れ る こ と を 意 味 し ま す 。 そ れ は た と え 別 々 の フ ァ イ ル に 関 連 づ け ら れ て い て も で す ; {clumpname} ラ ベ ル は 、 ま と め る 目 的 で の み 使 用 さ れ ま す 。 そ れ 自 身 は ロ グ メ ッ セ ー ジ で あ る と は 見 な さ れ ま せ ん 。

−nname チ ェ ッ ク イ ン し た リ ビ ジ ョ ン に シ ン ボ リ ッ ク 名

name を つ け ま す 。 も

し 同 じ シ ン ボ リ ッ ク 名 が 別 の リ ビ ジ ョ ン に 割 り 当 て ら れ て い た 場 合 、 ci は エ ラ ー メ ッ セ ー ジ を 出 力 し ま す 。

−Nname

-n と 同 様 の 動 作 を 行 い ま す 。 た だ し 、 同 じ シ ン ボ リ ッ ク 名 が 他 の リ ビ ジ ョ ン に 割 り 当 て ら れ て い た 場 合 は 、 再 割 り 当 て を 行 い ま す (こ ち ら を 優 先 し ま す )。

−sstate チ ェ ッ ク イ ン さ れ る リ ビ ジ ョ ン の 状 態 を state と し ま す 。 デ フ ォ ル ト は Exp (Experimental: 実 験 的 ) で す 。

−tfile

RCS フ ァ イ ル 中 の 内 容 記 述 テ キ ス ト を フ ァ イ ル file の 内 容 で 置 き 換 え ま す 。 す で に 内 容 記 述 テ キ ス ト が あ る 場 合 は こ れ を 削 除 し ま す 。 フ ァ イ ル 名 file で 始 ま っ て は い け ま せ ん 。

−t−string

RCS フ ァ イ ル 中 の 内 容 記 述 テ キ ス ト を 文 字 列 string で 置 き 換 え ま す 。 す で に 内 容 記 述 テ キ ス ト が あ る 場 合 は 削 除 さ れ ま す 。

−t オ プ シ ョ ン は 、 ど ち ら の 形 式 で 使 う 場 合 も 、 最 初 の チ ェ ッ ク イ ン 時 に し か 意 味 を 持 ち ま せ ん 。 そ れ 以 外 の 場 合 は 単 に 無 視 さ れ ま す 。 最 初 の チ ェ ッ ク イ ン 時 に −t オ プ シ ョ ン が 指 定 さ れ な か っ た 場 合 、 ci は 標 準 入 力 か ら 内 容 記 述 テ キ ス ト を 読 み 込 み ま す 。 テ キ ス ト は 、 フ ァ イ ル 終 端 (EOF) あ る い は ピ リ オ ド ( . ) の み の 行 で 終 了 し ま す 。 ユ ー ザ へ の 問 い 合 わ せ が 可 能 な 場 合 に は 、 テ キ ス ト の 入 力 を 促 す プ ロ ン プ ト が 表 示 さ れ ま す ( −I オ プ シ ョ ン 参 照 )。 旧 バ ー ジ ョ ン と の 互 換 性 の た め 、 引 数 の な い −t オ プ シ ョ ン は 無 視 さ れ ま す 。

−T 新 し い リ ビ ジ ョ ン が 存 在 し 、

RCS フ ァ イ ル の 修 正 時 刻 が 新 し い リ ビ

ジ ョ ン の 時 刻 よ り も 古 け れ ば 、 RCS フ ァ イ ル の 修 正 時 刻 に 対 し て 新 し い リ ビ ジ ョ ン の 時 刻 を 代 入 し ま す ; そ う で な い 場 合 は RCS フ ァ イ ル の 修 正 時 刻 は 保 た れ ま す 。 リ ビ ジ ョ ン を ロ ッ ク し た 場 合 は 、 ci は 通 常 RCS フ ァ イ ル の 修 正 時 刻 を 現 在 の 時 刻 に 設 定 し ま す 。 な ぜ な ら ロ ッ ク が RCS フ ァ イ ル に 格 納 さ れ 、 ロ ッ ク の 削 除 は RCS フ ァ イ ル の 変 更 を 要 す る か ら で す 。 RCS フ ァ イ ル が ワ ー ク フ ァ イ ル よ り も 新 し く な る 方 法 と し て 2 通 り 有 り ま す : ま ず 、 ci −M は 現 在 時 刻 以 前 の 日 付 で ワ ー ク フ ァ イ ル を 作 成 し ま す ; 2 番 目 に 、 直 前 の バ ー ジ ョ ン を 回 復 す る 時 、 ワ ー ク フ ァ イ ル を 変 更 し な い 場 合 に も RCS フ ァ イ ル は 変 更 さ れ 得 ま す 。 RCS フ ァ イ ル の ワ ー ク フ ァ イ ル に お け る make(1) 依 存 に よ り 、 上 記 2 ケ ー ス は 過 剰 の 再 コ ン パ イ ル と い う 結 果 に な り 得 ま す 。 −T オ プ シ ョ ン を 使 用 す る こ と で 、 RCS フ ァ イ ル の 日 付 を ご ま か し 、 再 コ ン パ イ ル を 禁 止 し ま す 。 こ の オ プ シ ョ ン は 注 意 し て 使 っ て 下 さ い ; あ る ワ ー ク フ ァ イ ル の チ ェ ッ ク イ ン が 、 同 じ RCS フ ァ イ ル に 関 連 づ け ら れ て い る 別 の ワ ー ク フ ァ イ ル に 影 響 を 及 ぼ す べ き 時 で も 、 再 コ ン パ イ ル を 抑 制 し 得 ま す 。 例 え ば 、 RCS フ ァ イ ル の 時 刻 を 01:00、 (変 更 さ れ た ) ワ ー ク フ ァ イ ル の 時 刻 を 02:00、 別 の ワ ー ク フ ァ イ ル の コ ピ ー の 時 刻 を 03:00、 現 在 の 時 刻 を 04:00 と し ま す 。 こ こ で 、 ci −d −T と す る と 、 RCS フ ァ イ ル の 時 刻 は 通 常 の 04:00 で は な く 02:00 に な り ま す ; こ の 結 果 、 make(1) は 別 の コ ピ ー が RCS フ ァ イ ル よ り も 新 し い と (誤 っ て ) 認 識 し ま す 。

−wlogin 指 定 さ れ た login を リ ビ ジ ョ ン の 作 者 と し て 登 録 し ま す 。 作 者 名 を ご ま か し た い 場 合 や 、 作 者 キ ー ワ ー ド が ワ ー ク フ ァ イ ル に な い に も か か わ ら ず -k オ プ シ ョ ン を 使 い た い 場 合 に 便 利 で す 。 −V RCS の リ ビ ジ ョ ン 番 号 を 表 示 し ま す 。

−Vn

RCS シ ス テ ム の バ ー ジ ョ ン n の エ ミ ュ レ ー シ ョ ン を 行 い ま す 。 詳 細 は co(1) を 参 照 し て く だ さ い 。

−xsuffixes

RCS フ ァ イ ル の 拡 張 子 を 指 定 し ま す 。 拡 張 子 が 空 で は な い 場 合 、 拡 張 子 ま で 含 め た す べ て の パ ス 名 を RCS フ ァ イ ル 名 で あ る と み な し ま す 。 拡 張 子 が 空 の 場 合 は 、 RCS/path ま た は path1/RCS/path2 形 式 の も の を RCS フ ァ イ ル 名 で あ る と み な し ま す 。 本 オ プ シ ョ ン の 場 合 、 / で 区 切 る こ と に よ り 、 複 数 の 拡 張 子 を 指 定 で き ま す 。 た と え ば 、 −x,v/ は 、 ,v と 空 の 拡 張 子 の 2 つ の 拡 張 子 を 持 つ RCS フ ァ イ ル を 指 定 し ま す 。 複 数 の 拡 張 子 が 指 定 さ れ た 場 合 、 指 定 さ れ た 順 に RCS フ ァ イ ル を 検 索 し ま す 。 最 初 に 見 つ か っ た サ フ ィ ッ ク ス が RCS フ ァ イ ル に 対 し て 用 い ら れ ま す 。 RCS フ ァ イ ル を 生 成 で き る が 、 RCS フ ァ イ ル が 見 つ か ら な い と き は 、 こ れ ら の サ フ ィ ッ ク ス を 新 し い フ ァ イ ル 名 に 対 し て 用 い ま す 。 デ フ ォ ル ト の 拡 張 子 は 、 イ ン ス ト ー ル さ れ る 環 境 に よ り 異 な り ま す 。 UNIX の よ う な コ ン マ を フ ァ イ ル 名 中 に 含 め る こ と の 出 来 る 計 算 機 で は 、 通 常 −x,v/ が 、 そ れ 以 外 の 計 算 機 で は 空 の 拡 張 子 が 用 い ら れ ま す 。

−zzone キ ー ワ ー ド 置 換 で の 日 付 の 出 力 書 式 の 指 定 を 行 い 、 ま た 、

−ddate オ プ

シ ョ ン で の date の デ フ ォ ル ト の タ イ ム ゾ ー ン の 指 定 を 行 い ま す 。 zone は 、 省 略 す る 事 も 、 UTC か ら の 数 値 差 で 指 定 す る 事 も 、 特 別 な 文 字 列 LT を 使 っ て ロ ー カ ル 時 間 で 指 定 す る 事 も で き ま す 。 デ フ ォ ル ト で は zone は 空 で あ り 、 こ の 場 合 は 伝 統 的 な RCS フ ォ ー マ ッ ト 、 す な わ ち タ イ ム ゾ ー ン 無 し の UTC で あ り 日 付 を ス ラ ッ シ ュ で 区 切 り ま す ; そ う で な い 場 合 は 時 刻 は タ イ ム ゾ ー ン 付 の ISO 8601 フ ォ ー マ ッ ト で す 。 例 え ば 、 ロ ー カ ル タ イ ム が 1990 年 1 月 11 日 太 平 洋 標 準 時 間 ( UTC の 8 時 間 西 ) 午 後 8 時 の 場 合 、 時 間 の 出 力 は 次 の よ う に な り ま す : オ プ シ ョ ン 時 刻 の 出 力

−z

1990/01/12 04:00:00

(デ フ ォ ル ト )
−zLT

1990-01-11 20:00:00−08
−z+05:30

1990-01-12 09:30:00+05:30

−z オ プ シ ョ ン は RCS フ ァ イ ル に 格 納 さ れ て い る 日 付 (常 に UTC で す ) に は 影 響 し ま せ ん 。

フ ァ イ ル 名 規 則

RCS フ ァ イ ル と ワ ー ク フ ァ イ ル の 組 み 合 わ せ は 3 通 り の 方 法 で 指 定 す る こ と が で き ま す (使 用 例 の 項 目 も 参 照 し て く だ さ い )。

1) RCS フ ァ イ ル と ワ ー ク フ ァ イ ル の 両 方 を 指 定 す る 。 RCS フ ァ イ ル の パ ス 名 は path1/workfileX 形 式 、 ワ ー ク フ ァ イ ル の パ ス 名 は path2/workfile 形 式 を と り ま す 。 こ の 場 合 の path1/path2/ は パ ス (異 な る パ ス や 、 空 で も 可 ) を 示 し 、 workfile は フ ァ イ ル 名 、 XRCS フ ァ イ ル の 拡 張 子 で す 。 も し X が 空 な ら 、 path1/RCS/ で 始 ま る か 、 /RCS/ を 含 ま ね ば な り ま せ ん 。

2) RCS フ ァ イ ル の み を 指 定 す る 。 ワ ー ク フ ァ イ ル が カ レ ン ト デ ィ レ ク ト リ に 作 成 さ れ 、 RCS フ ァ イ ル 名 か ら path1/ と 拡 張 子 X を 取 り 除 い た フ ァ イ ル 名 に な り ま す 。

3) ワ ー ク フ ァ イ ル の み を 指 定 す る 。 ci は ま ず 、 各 RCS 拡 張 子 X に 対 し て 、 path2/RCS/workfileX 形 式 の 名 前 で 検 索 を 行 い ま す 。 さ ら に 、 (も し こ れ が 見 つ か ら ず 、 X が 空 で な け れ ば 、 ) path2/workfileX を 検 索 し ま す 。

1) ま た は 2) の 方 法 で RCS フ ァ イ ル が 指 定 さ れ て い な い 場 合 、 ci は ま ず デ ィ レ ク ト リ ./RCS を 検 索 し 、 次 に カ レ ン ト デ ィ レ ク ト リ を 検 索 し ま す 。 異 常 に よ り RCS フ ァ イ ル の オ ー プ ン に 失 敗 す る と 、 ci は エ ラ ー 報 告 し ま す 。 他 に RCS フ ァ イ ル の パ ス 名 の 候 補 が あ っ て も で す 。 た と え ば デ ィ レ ク ト リ dRCS コ マ ン ド を 利 用 で き な い よ う に す る に は 、 d/RCS な る 名 前 の 通 常 フ ァ イ ル を 作 成 し て お き ま す 。 す る と 、 RCS コ マ ン ド は d/RCS を デ ィ レ ク ト リ と し て オ ー プ ン し よ う と し ま す が 、 デ ィ レ ク ト リ で は な い の で オ ー プ ン す る こ と が で き ず 失 敗 し ま す 。

使 用 例

RCS 拡 張 子 が ,v 、 カ レ ン ト デ ィ レ ク ト リ に は RCS フ ァ イ ル を 含 む RCS と い う サ ブ デ ィ レ ク ト リ が あ り 、 io.c,v が あ る と 仮 定 し ま す 。 こ こ で 、 以 下 に 示 し た コ マ ン ド を 実 行 す る と 、 ど れ も カ レ ン ト デ ィ レ ク ト リ に あ る io.cRCS/io.c,v に チ ェ ッ ク イ ン し 、 io.c を 削 除 し ま す 。

ci io.c; ci RCS/io.c,v; ci io.c,v;
ci io.c RCS/io.c,v; ci io.c io.c,v;
ci RCS/io.c,v io.c; ci io.c,v io.c;

RCS 拡 張 子 が 空 、 カ レ ン ト デ ィ レ ク ト リ に は RCS フ ァ イ ル を 含 む RCS と い う サ ブ デ ィ レ ク ト リ が あ り 、 io.c が あ る と 仮 定 し ま す 。 こ こ で 以 下 に 示 す コ マ ン ド は 、 ど れ も 新 し い リ ビ ジ ョ ン の チ ェ ッ ク イ ン を 行 い ま す 。

ci io.c; ci RCS/io.c;
ci io.c RCS/io.c;
ci RCS/io.c io.c;

フ ァ イ ル モ ー ド

ci が 作 成 し た RCS フ ァ イ ル は 、 ワ ー ク フ ァ イ ル の 読 み 込 み と 実 行 の 許 可 属 性 を 受 け 継 ぎ ま す 。 す で に RCS フ ァ イ ル が 存 在 す れ ば 、 ci は そ の 読 み 込 み と 実 行 の 許 可 属 性 を 保 持 し ま す 。 ci は 、 つ ね に RCS フ ァ イ ル の 書 き 込 み 許 可 属 性 を 不 許 可 に し ま す 。

関 連 フ ァ イ ル

い く つ か の 一 時 フ ァ イ ル が 、 ワ ー ク フ ァ イ ル の 存 在 す る デ ィ レ ク ト リ ま た は 一 時 デ ィ レ ク ト リ (環 境 変 数 の 項 の TMPDIR 参 照 ) に 作 成 さ れ ま す 。 セ マ フ ォ フ ァ イ ル 等 の フ ァ イ ル が RCS フ ァ イ ル が 存 在 す る デ ィ レ ク ト リ に 作 成 さ れ ま す 。 空 で は な い 拡 張 子 を 用 い て い る 場 合 、 セ マ フ ォ フ ァ イ ル 名 の 先 頭 文 字 に は 、 拡 張 子 の 先 頭 文 字 と 同 じ 文 字 が 用 い ら れ ま す ; よ っ て 、 拡 張 子 と し て 、 ワ ー ク フ ァ イ ル の 拡 張 子 の 先 頭 文 字 と 同 じ 文 字 を 指 定 し な い よ う に 注 意 し て く だ さ い 。 空 の 拡 張 子 を 指 定 し て い る 場 合 、 セ マ フ ォ フ ァ イ ル 名 の 最 後 の 文 字 が ア ン ダ ス コ ア ( _ ) と な り ま す 。

ci は 、 RCS フ ァ イ ル や ワ ー ク フ ァ イ ル を 変 更 し ま せ ん 。 通 常 ci は そ れ ら の フ ァ イ ル を ア ン リ ン ク し 、 新 し い フ ァ イ ル を 作 成 し ま す ; た だ し 、 RCS フ ァ イ ル へ の シ ン ボ リ ッ ク リ ン ク の 鎖 を 壊 す 代 わ り に 、 目 的 の フ ァ イ ル を ア ン リ ン ク し ま す 。 よ っ て 、 ci は 変 更 さ れ る ワ ー ク フ ァ イ ル へ の ハ ー ド リ ン ク 、 シ ン ボ リ ッ ク リ ン ク を 全 て 壊 し ま す ; さ ら に 、 RCS フ ァ イ ル へ の ハ ー ド リ ン ク は 無 効 と な り 、 シ ン ボ リ ッ ク リ ン ク は 保 存 さ れ ま す 。 実 効 ユ ー ザ は 、 RCS フ ァ イ ル を 含 む デ ィ レ ク ト リ の 検 索 お よ び 書 き 込 み 権 を 持 っ て い な け れ ば な り ま せ ん 。 通 常 実 ユ ー ザ は 、 RCS フ ァ イ ル と ワ ー ク フ ァ イ ル の 読 み 込 み 許 可 と 、 そ れ ら を 含 む デ ィ レ ク ト リ の 検 索 お よ び 書 き 込 み 権 を 持 っ て い な け れ ば な り ま せ ん 。 し か し 、 古 い 計 算 機 の な か に は 実 ユ ー ザ と 実 効 ユ ー ザ の 間 を 容 易 に 行 き 来 す る こ と が で き な い も の も あ り ま す 。 こ れ ら の 計 算 機 で は 、 実 効 ユ ー ザ の み が 利 用 さ れ ま す 。 cico の コ ピ ー に setuid が 設 定 さ れ て い な け れ ば 、 実 ユ ー ザ と 実 効 ユ ー ザ は 同 一 で す 。 次 節 で 説 明 す る よ う に 、 も し 実 効 ユ ー ザ が 全 RCS フ ァ イ ル と そ れ を 含 む デ ィ レ ク ト リ を 所 有 し 、 実 効 ユ ー ザ の み が RCS デ ィ レ ク ト リ に 書 き 込 め る よ う に 設 定 で き る な ら 、 RCS フ ァ イ ル の セ キ ュ リ テ ィ を 強 化 す る こ と が 可 能 で す 。 ユ ー ザ は RCS フ ァ イ ル を 含 む デ ィ レ ク ト リ の 許 可 属 性 を 変 更 す る こ と で 、 RCS フ ァ イ ル に 対 す る ア ク セ ス を 制 限 で き ま す ; そ の デ ィ レ ク ト リ に 書 き 込 み 権 の あ る ユ ー ザ だ け が 、 RCS フ ァ イ ル を 変 更 す る RCS コ マ ン ド を 使 用 す る こ と が で き ま す 。 た と え ば 、 ユ ー ザ が 複 数 の グ ル ー プ に 属 す る こ と が 出 来 る 計 算 機 で は 、 RCS デ ィ レ ク ト リ を あ る グ ル ー プ の み が 書 き 込 み 権 を 持 つ よ う に 設 定 し ま す 。 こ れ は 、 略 式 の プ ロ ジ ェ ク ト で は 十 分 で す が 、 グ ル ー プ に 所 属 す る ユ ー ザ が 自 由 に RCS フ ァ イ ル を 変 更 す る こ と が で き 、 RCS フ ァ イ ル す べ て を 削 除 す る こ と も で き ま す 。 そ の た め 、 正 式 な プ ロ ジ ェ ク ト で は 、 RCS フ ァ イ ル を 自 由 に 操 作 き る RCS 管 理 者 と 、 新 た な リ ビ ジ ョ ン を チ ェ ッ ク イ ン す る こ と 以 外 の 操 作 は で き な い 他 の ユ ー ザ と を 、 区 別 す る こ と が あ り ま す 。

SETUID の 使 用

RCS 管 理 者 以 外 の ユ ー ザ が リ ビ ジ ョ ン を 削 除 で き な い よ う に す る に は 、 以 下 の よ う に setuid 特 権 を 使 用 す る こ と が で き ま す 。

• そ の 計 算 機 で

RCS に て setuid が 使 用 で き る か 確 認 し ま す 。 疑 問 が あ る と

き は 、 信 頼 で き る 専 門 家 に 意 見 を 聞 い て く だ さ い 。 最 も 良 い の は 、 seteuid() シ ス テ ム コ ー ル が Posix 1003.1a Draft 5 に 記 述 さ れ て い る よ う に 動 作 す る こ と で す 。 な ぜ な ら 、 実 ユ ー ザ が root で あ っ て も 、 RCS は 実 ユ ー ザ と 実 効 ユ ー ザ を 簡 単 に 切 り 替 え る こ と が で き る か ら で す 。 そ の 次 に 良 い の は 、 setuid() シ ス テ ム コ ー ル が saved setuid (Posix 1003.1-1990の { _POSIX_SAVED_IDS } の 動 作 ) を サ ポ ー ト し て い る 場 合 で す ; こ の 場 合 、 実 ユ ー ザ も し く は 実 効 ユ ー ザ が root で あ る 時 の み 失 敗 し ま す 。 RCS は setuid に 失 敗 す る と 、 た だ ち に 終 了 し ま す 。

• ユ ー ザ グ ル ー プ の

RCS 管 理 者 と し て 、 ユ ー ザ A を 選 び ま す 。 A だ け

が 、 RCS フ ァ イ ル に 対 し て rcs コ マ ン ド を 実 行 す る こ と が で き ま す 。 Aroot や 、 特 権 を 持 っ た ユ ー ザ で あ っ て は い け ま せ ん 。 相 互 に 異 な る ユ ー ザ グ ル ー プ に は 、 異 な る 管 理 者 を 使 用 す る べ き で す 。

• ユ ー ザ が 実 行 す る フ ァ イ ル の デ ィ レ ク ト リ に 、 パ ス 名

B を 選 び ま す 。

• 以 下 の よ う に 、 通 常 の イ ン ス ト ー ル デ ィ レ ク ト リ

D か ら 、 cicoB に コ ピ ー し 、 A へ setuid し ま す :

mkdir B
cp
D/c[io] B
chmod go−w,u+s
B/c[io]

• 以 下 の よ う に 、 各 ユ ー ザ の パ ス に

B を 加 え ま す :

PATH=B:$PATH; export PATH # ordinary shell
set path=(
B $path) # C shell

• 以 下 の よ う に 、

A だ け が 書 き 込 み 許 可 を 持 つ RCS デ ィ レ ク ト リ R を 作 成 し

ま す :

mkdir R
chmod go−w
R

• 特 定 の ユ ー ザ だ け に

RCS フ ァ イ ル の 読 み 込 み を 許 可 し た い 場 合 、 そ の ユ ー

ザ を ユ ー ザ グ ル ー プ G に 入 れ て 、 さ ら に A が 以 下 の よ う に 、 RCS デ ィ レ ク ト リ を 保 護 し ま す :

chgrp G R
chmod g−w,o−rwx
R

(存 在 す れ ば ) 古 い RCS フ ァ イ ル を R に コ ピ ー し 、 A が 所 有 で あ る こ と を 保 証 し ま す 。

RCS フ ァ イ ル の ア ク セ ス リ ス ト は 、 リ ビ ジ ョ ン を チ ェ ッ ク イ ン お よ び ロ ッ ク で き る ユ ー ザ を 制 限 し ま す 。 デ フ ォ ル ト の ア ク セ ス リ ス ト は 空 で 、 RCS フ ァ イ ル を 読 む こ と の で き る 全 て の ユ ー ザ に 、 登 録 の 権 限 を 与 え ま す 。 チ ェ ッ ク イ ン を 制 限 し た い 場 合 は 、 A が そ の フ ァ イ ル に 対 し て rcs −a を 実 行 し ま す ; rcs(1) を 参 照 し て く だ さ い 。 特 に rcs −e −aA は 、 A だ け に ア ク セ ス を 制 限 し ま す 。

初 め て チ ェ ッ ク イ ン を 行 う 前 に 、 Arcs −i に よ っ て 新 し い RCS フ ァ イ ル を 初 期 化 し ま す 。 チ ェ ッ ク イ ン を 制 限 し た い 場 合 、 −a オ プ シ ョ ン を 付 け 加 え ま す 。

setuid 特 権 は 、 ci, co, rcsclean の み に 与 え ま す ; rcs や 他 の コ マ ン ド に 、 setuid 特 権 を 与 え て は な り ま せ ん 。

RCS コ マ ン ド に 対 し て 、 他 の setuid コ マ ン ド を 実 行 し な い で く だ さ い 。 setuid は あ な た が 考 え る よ り 扱 い に く い も の で す 。

環 境 変 数

RCSINIT 本 変 数 に 空 白 で 区 切 っ た オ プ シ ョ ン を 設 定 す る こ と で 、 コ マ ン ド ラ イ ン 引 数 に 先 立 っ て 処 理 さ れ ま す 。 空 白 は バ ッ ク ス ラ ッ シ ュ に よ っ て エ ス ケ ー プ す る こ と が で き ま す 。 RCSINIT は ほ と ん ど の RCS コ マ ン ド で 参 照 さ れ ま す 。 特 に −q, −V, −x, −z オ プ シ ョ ン を 指 定 し て お く と 便 利 で す 。

TMPDIR 一 時 デ ィ レ ク ト リ 名 を 指 定 し ま す 。 設 定 さ れ て い な い 場 合 は 、 環 境 変 数

TMPTEMP と を 調 べ 、 始 め に 見 つ か っ た 値 を 用 い ま す ; ど れ も 設 定 さ れ て い な い 場 合 は 、 計 算 機 依 存 の デ フ ォ ル ト の デ ィ レ ク ト リ (た い て い は /tmp ) を 使 用 し ま す 。

診 断

各 リ ビ ジ ョ ン に 対 し て 、 ciRCS フ ァ イ ル 名 、 ワ ー ク フ ァ イ ル 名 、 追 加 す る リ ビ ジ ョ ン 番 号 、 直 前 の リ ビ ジ ョ ン 番 号 を 表 示 し ま す 。 全 て の 処 理 が 成 功 し た 場 合 の み 、 終 了 ス テ ー タ ス が 0 に な り ま す 。

作 者

Author: Walter F. Tichy.
Manual Page Revision: 1.6; Release Date: 1999/08/27.
Copyright © 1982, 1988, 1989 Walter F. Tichy.
Copyright © 1990, 1991, 1992, 1993, 1994, 1995 by Paul Eggert.

関 連 項 目

co(1), ident(1), make(1), rcs(1), rcsclean(1), rcsdiff(1), rcsintro(1), rcsmerge(1), rlog(1), setuid(2), rcsfile(5)
Walter F. Tichy, RCS --A System for Version Control, Software--Practice & Experience 15, 7 (July 1985), 637-654.