如何以编程方式从C#中获取最新的clearcase标签
本文关键字:最新 获取 clearcase 标签 编程 方式 | 更新日期: 2023-09-27 17:48:49
我正试图将版本信息放入从最新ClearCase标签检索到的C#GUI框架中。这最初是由Visual Soursafe完成的,如下所示。
vssDB = new VSSDatabaseClass();
vssDB.Open( databaseName, "vssadmin", "vssadmin" );
VSSItem item = vssDB.get_VSSItem( @"$'BuildDCP.bat", false );
foreach(VSSVersion vssVersion in item.get_Versions(0))
{
// Pull the first non-blank label and use that
if ( vssVersion.Label != "" )
{
labelID = vssVersion.Label.ToString();
break;
}
}
我正在尝试使用ClearCase做一些类似的事情,因为我们将源代码控制从VSS更改为CC。任何帮助都将不胜感激。
谢谢!
我相信通过脚本可以更好地实现这一点,该脚本将从C#程序中调用。
但是您可以通过ClearCase提供的CAL接口直接调用一些COM对象。
界面的文档可以通过ClearCase帮助(开始>程序>Rational ClearCase>ClearCase帮助)访问,其中有一个"ClearCase自动化库(CAL)"条目。另一个路径是在ClearCase/bin目录中查找"cc_cal.chm"。
在VB中,使用CAL API,这将给出类似以下内容:
Dim CC As New ClearCase.Application
Dim labelID As String
Set aVersion = CC.Version("[Path-To]'BuildDCP.bat");
Set someLabels = Ver.Labels;
If (someLabels.Count > 0) Then
' the first label listed is the most recently applied
labelID = someLabels.Item(1).Type.Name
EndIf
我真的希望COM接口有更好的文档,或者更明显。或者ClearCase Explorer或Project Explorer的代码是开源的。
我已经做了一些很酷的事情,但我基本上是从向C#项目添加COM引用开始的,然后开始摆弄我找到的接口。
祝你好运!