rcsコマンド、他に知らないサブコマンドありそうです。
rcs –commandsで表示される一覧と、info rcsの一覧で差分を見てみます。
takk@deb9:~/tmp$ rcs --commands (command) (description) ci Check in revisions of RCS files from working files. co Check out working files from revisions of RCS files. frob Change RCS file attributes. clean Clean up working files. diff Compare RCS revisions. merge Merge RCS revisions. log Print log messages and other information about RCS files. takk@deb9:~/tmp$
Usage * Common elements:: * ci:: * co:: * ident:: * merge:: * rcs:: * rcsclean:: * rcsdiff:: * rcsmerge:: * rlog::
infoにあって–commandsの一覧にないコマンドとしては、ident、rcsclean、rcsdiff、rcsmerge、rlogがありますね。rlogは前回見ました。rcs~は、rcs ~の省略系でしょう。
identはよくわかりません。今回はidentについて確認します。
man identより。
IDENT(1) General Commands Manual IDENT(1) 名称 ident - ファイル内の RCS キーワードを読み出す 書式 ident [ -q ] [ -V ] [ file ... ] 解説 ident は、指定されたファイルがあればそのファイルから、指定がない場合に は標準入力から、 $keyword: text $ なるパターンを検索します。 これらのパターンは、通常 RCS の co(1) コマンドにより自動的に挿入されま すが、 手作業で入れることも可能です。オプション -q を指定すると、ファイ ル中に キーワードが発見できなくても警告メッセージを出力しません。 -V を 指定すると、 ident のバージョン番号を表示します。 ~省略~
co(チェックアウト)したファイルに、このようなパターンが入ってたか記憶にありません。チェックアウトして確認してみます。
takk@deb9:~/tmp$ co test2.c RCS/test2.c,v --> test2.c revision 1.10 done takk@deb9:~/tmp$ cat test2.c HELLO10 takk@deb9:~/tmp$
ないですね。作ったテキストファイルのままです。
man identの説明にあるように、coが自動的に出力するメッセージなのでしょう。
man coを確認。
~省略~ -kkv ワークファイルにデフォルト形式のキーワード文字列を埋め込みま す。たとえば、 キーワード Revision に対しては、文字列 $Revision: 1.6 $ を生成します。 ci -l や co -l でファイルがロックされる時の み、 Header, Id, Locker キーワードにロック者名を挿入します。これ がデフォルトの動作です。 -kkvl -kkv とほぼ同様ですが、指定されたリビジョンがロックされていた場 合にはいつも、 ロック者名を挿入します。 -kk キーワード文字列中のキーワード名のみの文字列を生成し、値は省略し ~省略~
このあたりのオプションを使えばキーワードが埋め込まれるのでしょう。
やってみます。
takk@deb9:~/tmp$ co -kkv test2.c RCS/test2.c,v --> test2.c revision 1.10 done takk@deb9:~/tmp$ cat test2.c HELLO10 takk@deb9:~/tmp$
あれれ、ダメでした。まだまだ調べることいっぱいです。
コメント