RCSMERGE(1)

名称
rcsmerge - RCS ファイルのリビジョンを併合する

書式
rcsmerge [options] file

解説
rcsmerge は 2 つのリビジョン間の変更点をワークファイルに適用します。

RCS 拡張子にマッチするファイル名は RCS ファイルであるとみなし、その他 のファイル名はワークファイルであるとみなします。 ci(1) を参照してください。

後述するオプション (通常は -r ) によって、少なくとも1つのリビジョンを 指定する必要があります。最大で、2 つのリビジョンを指定することができます。 1 つのリビジョンのみが指定された場合、もう 1 つのリビジョンとして、デフォルト 枝 (通常は幹で最大の番号を持つ枝) が用いられます。リビジョンは、数字または シンボルで指定できます。

もし重複が発生すると、 rcsmerge は警告メッセージを表示し、重複した領域を merge(1) で説明されているような形式で出力します。本コマンドは取り出された リビジョンに一連の変更を加えるのに便利です。

オプション

-ksubst
    キーワード置換において、 subst で指定された形式を用います。詳細は co(1) を参照してください。例えば、 -kk -r1.1 -r1.2 は 1.1 から 1.2 への変更を併合する際に、キーワードの違いを無視します。

-p[rev]
    結果をワークファイルに上書きせずに、標準出力に書き出します。

-q[rev]
    無口に動作します。診断メッセージは表示されません。

-r[rev]
    リビジョン rev を参考に併合を行います。 rev を指定しない場合は、デフォルト枝の最新リビジョンを使用します。

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

-xsuffixes
    RCS ファイル拡張子を指定します。詳しくは ci(1) を参照してください。

例
すでにリリースしたリビジョン 2.8 の f.c というファイルがあるとします。 ここで、まだリリースしていないリビジョン 3.4 が完成したときに、他人から 2.8 を 改良したものを受けとったとします。この改良と、あなたが 2.8 から 3.4 の 間に行った変更を併合するには次のようにします。

rcsmerge -p -r2.8 -r3.4 f.c >f.merged.c

ここで、併合された f.merged.c を検査できます。

もし、他人が改良したものを RCS ファイル中に保存しておきたいと考えるなら、 それを 2.8.1.1 というリビジョンで登録し、その後で co に -j オプションをつけて実行します。

ci -r2.8.1.1 f.c
co -r3.4 -j2.8:2.8.1.1 f.c

別の例として、以下のコマンドはリビジョン 2.4 から 2.8 への変更をすでに 取り出されているワークファイル f.c から取り消します。

rcsmerge -r2.8 -r2.4 f.c

指定するリビジョン番号の順番に注意してください。また、 f.c が上書きされ ることにも注意してください。

環境変数

RCSINIT
    コマンドライン引数に先立って指定すべきオプションを指定します。 オプションは空白で区切って指定します。詳しくは ci(1) を参照してください。

診断
併合によって重複が生じなければ終了ステータス 0 を、重複があれば 1 を、 問題が発生した場合は 2 を返します。

作者
Author: Walter F. Tichy.
Revision Number: ; Release Date: .
Copyright © 1982, 1988, 1989 by Walter F. Tichy.
Copyright © 1990, 1991 by Paul Eggert.

関連項目
ci(1), co(1), ident(1), merge(1), rcs(1), rcsdiff(1), rcsintro(1), rlog(1), rcsfile(5)
Walter F. Tichy, RCS--A System for Version Control, Software--Practice & Experience 15, 7 (July 1985), 637-654.