ログの修正(rcs)

今回のrcsです。-mオプションで、ログの修正をしてみます。
man rcsで使い方の確認。

       -mrev:msg
              リビジョン rev のログメッセージを msg に置換します。

簡単そうです。
1.3のログを修正してみたいと思います。
-mオプションを使う前に、r1.3のログを確認。

takk@deb9:~/tmp$ rcs log -r1.3 test2.c

RCS file: RCS/test2.c,v
Working file: test2.c
head: 2.2
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 105;   selected revisions: 1
description:
test
----------------------------
revision 1.3
date: 2018/09/23 07:04:11;  author: takk;  state: Exp;  lines: +1 -1
AUTO CHECK IN
=============================================================================
takk@deb9:~/tmp$

では、-mオプションを使ってみます。

takk@deb9:~/tmp$ rcs log -m1.3:"new log" test2.c
log: unknown option: -m1.3:new log
takk@deb9:~/tmp$

あれ、unknown optionと表示されました。

もしかしてlogコマンドは不要だったのでしょうか。

takk@deb9:~/tmp$ rcs -m1.3:"new log" test2.c
RCS file: RCS/test2.c,v
done
takk@deb9:~/tmp$

実行できました。

修正できたか確認してみます。

takk@deb9:~/tmp$ rcs log -r1.3 test2.c

RCS file: RCS/test2.c,v
Working file: test2.c
head: 2.2
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 105;   selected revisions: 1
description:
test
----------------------------
revision 1.3
date: 2018/09/23 07:04:11;  author: takk;  state: Exp;  lines: +1 -1
new log
=============================================================================
takk@deb9:~/tmp$

new logに変更されてますね。

では、複数レビジョンを指定してログ修正することは可能でしょうか。
-mオプションを使う前に、1.4~1.10のログを確認。

takk@deb9:~/tmp$ rcs log -r1.4:1.10 test2.c

RCS file: RCS/test2.c,v
Working file: test2.c
head: 2.2
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 105;   selected revisions: 7
description:
test
----------------------------
revision 1.10
date: 2018/09/23 07:04:11;  author: takk;  state: Exp;  lines: +1 -1
branches:  1.10.1;
AUTO CHECK IN
----------------------------
revision 1.9
date: 2018/09/23 07:04:11;  author: takk;  state: Exp;  lines: +1 -1
AUTO CHECK IN
----------------------------
revision 1.8
date: 2018/09/23 07:04:11;  author: takk;  state: Exp;  lines: +1 -1
AUTO CHECK IN
----------------------------
revision 1.7
date: 2018/09/23 07:04:11;  author: takk;  state: Exp;  lines: +1 -1
AUTO CHECK IN
----------------------------
revision 1.6
date: 2018/09/23 07:04:11;  author: takk;  state: Exp;  lines: +1 -1
AUTO CHECK IN
----------------------------
revision 1.5
date: 2018/09/23 07:04:11;  author: takk;  state: Exp;  lines: +1 -1
AUTO CHECK IN
----------------------------
revision 1.4
date: 2018/09/23 07:04:11;  author: takk;  state: Exp;  lines: +1 -1
AUTO CHECK IN
=============================================================================
takk@deb9:~/tmp$

全部AUTO CHECK INというログになっています。

では1.4~1.10を:で区切って指定してみます。

takk@deb9:~/tmp$ rcs -m1.4:1.10:"new log" test2.c
RCS file: RCS/test2.c,v
done
takk@deb9:~/tmp$

修正されたか確認。

takk@deb9:~/tmp$ rcs log -r1.4:1.10 test2.c

RCS file: RCS/test2.c,v
Working file: test2.c
head: 2.2
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 105;   selected revisions: 7
description:
test
----------------------------
revision 1.10
date: 2018/09/23 07:04:11;  author: takk;  state: Exp;  lines: +1 -1
branches:  1.10.1;
AUTO CHECK IN
----------------------------
revision 1.9
date: 2018/09/23 07:04:11;  author: takk;  state: Exp;  lines: +1 -1
AUTO CHECK IN
----------------------------
revision 1.8
date: 2018/09/23 07:04:11;  author: takk;  state: Exp;  lines: +1 -1
AUTO CHECK IN
----------------------------
revision 1.7
date: 2018/09/23 07:04:11;  author: takk;  state: Exp;  lines: +1 -1
AUTO CHECK IN
----------------------------
revision 1.6
date: 2018/09/23 07:04:11;  author: takk;  state: Exp;  lines: +1 -1
AUTO CHECK IN
----------------------------
revision 1.5
date: 2018/09/23 07:04:11;  author: takk;  state: Exp;  lines: +1 -1
AUTO CHECK IN
----------------------------
revision 1.4
date: 2018/09/23 07:04:11;  author: takk;  state: Exp;  lines: +1 -1
1.10:new log
=============================================================================
takk@deb9:~/tmp$

ん~、だめですねえ。レビジョンの範囲指定をするための:が、-mオプションのレビジョンとメッセージを区切るための:と認識されるため、上手くいきません。
複数のレビジョンのログを一括変更するなら、別の方法を考えないといけませんね。

Leave a Reply

Your email address will not be published. Required fields are marked *

CAPTCHA