我的项目需要使用excel表中的Perl脚本从ClearCase数据中提取一些东西,这些是 -
通过给出两个特定的时间线或两个基线.
请帮助我...
基本上,ClearCase Perl脚本基于系统和cleartool命令的解析输出.
这些脚本基于一个像cCCmd包这样的cleartool运行cmd ,并使用如下:
use strict;
use Config;
require "path/to/CCCmd.pm";
sub Main
{
my $hostname = CCCmd::RunCmd('hostname');
chomp $hostname;
my $lsview = CCCmd::ClearToolNoError("lsview -l -pro -host $hostname");
return 1;
}
Main() || exit(1);
exit(0);
Run Code Online (Sandbox Code Playgroud)
例如.
因此,一旦拥有了基本的Perl结构,您需要的只是基于fmt_ccase指令分析的正确的cleartool命令.
1 /该基线内相关的所有活动(列标题"活动")
ct descr -fmt "%[activities]CXp" baseline:aBaseline.xyz@\ideapvob
Run Code Online (Sandbox Code Playgroud)
这将为您提供活动列表(以' ,
' 分隔).
对于每项活动:
2 /所有者的ID(列标题 - 所有者)
ct descr -fmt "%u" activity:anActivityName@\ideapvob
Run Code Online (Sandbox Code Playgroud)
3 /特定活动中关联的所有元素.(列标题 - "元素详细信息")
不确定:活动可以列出他们的版本(参见/ 4),而不是他们的元素
4 /对于每个元素,关联的版本(列标题 - "版本")
对于给定的活动:
ct descr -fmt "%[versions]CQp\n" activity:anActivityName@\ideapvob
Run Code Online (Sandbox Code Playgroud)
5 /每个元素的代码行总数,添加的代码行总数,删除的代码行总数,代码行总数改变..(列标题"代码行数", "添加了代码行","删除了代码行"和"代码行更改")
这可能相当长,但对于每个版本,您可以计算先前版本的扩展路径并进行差异.
我建议使用动态视图,因为您可以从那里访问任何版本的文件(而不是快照视图).