我需要一个给出分支名称的CVS命令,它将为您提供该分支中最后一个文件的修订号.
CVS树结构:
(filename)
|
+--> 1.1-----(branch)
| |
| 1.1.1.1
| |
| 1.1.1.2
| |
| 1.1.1.3
|
|
1.2
|
|
:
例如:使用CVS命令,给定标签名称“branch”,如何让CVS给我修订号“1.1.1.3”?
我已经尝试使用log命令,并期望能够解析log命令的输出以获取版本号,但是log命令为分支输出的版本与版本号末尾的版本号不匹配.科.
例如:cvs -Q log -h filename
CVS版本信息:
我发布了一个类似的问题here,关于从标签名称获取文件的版本号.我从来没有得到关于如何做到这一点的明确答案,但我能够通过使用Perl脚本解析日志输出来找到解决方法.
由于分支的日志输出与分支末尾的版本号不匹配,因此我的Perl脚本解决方案不起作用.
最佳答案 你应该使用cvs log -rMyBranch. MyFilename,MyBranch.是有问题的分支,点添加为最后一个字符,MyFilename是有问题的文件名.
例:
cvs log -rTestBranch. TESTFILE.TXT
RCS file: C:\cvsroot/TestRepository/TestFile.txt,v
Working file: TestFile.txt
head: 1.2
branch:
locks: strict
access list:
symbolic names:
TestBranch: 1.2.0.2
keyword substitution: kv
total revisions: 4; selected revisions: 1
description:
----------------------------
revision 1.2.2.2
date: 2015/06/08 18:32:52; author: Codeguard; state: Exp; lines: +1 -1; kopt: kv; commitid: 117c5575dfce6e9e; filename: TestFile.txt;
2
=============================================================================
从那里,您可以轻松地解析修订版.