使用cleartool,是否可以获取给定源代码目录树中我所做的所有检入列表?如果可能,我想看到检入时间和文件版本。我正在使用Windows。
提前感谢。
这需要使用 cleartool find
命令:
-exec
指令描述找到的版本-fmt
更好地格式化结果-created_by
查询语言运算符将结果限制为只有你的签入版本。您可以显示所有签入文件的所有版本,也可以显示每个签入版本的一个文件(即“元素”)。在您的情况下,要查看何时进行了签入操作,您需要列出这些版本。
类似于:
REM Windows syntax
cleartool find . -ver "created_by(myLogin)" -exec "cleartool descr -fmt \"%En : %Sn made %Vd\n\" \"%CLEARCASE_XPN%\""
# Linux syntax
cleartool find . -ver 'created_by(myLogin)' -exec 'cleartool descr -fmt "%En : %Sn made %Vd\n" "$CLEARCASE_XPN"'
'.'代表的是当前目录,用于查看您的版本。
%Sn
将会给出分支/版本号,%Ln
则仅会给出版本号。
我知道原问题是关于cleartool的,但许多人不知道您也可以使用ClearCase ReportBuilder GUI完成此操作。使用GUI(除了不必学习cleartool find语法之外),其优点在于您可以右键单击所选元素并立即弹出“与上一个版本进行比较”或“版本树”。这取决于您想要对输出执行什么操作。
ReportBuilder可在“Administration”文件夹下找到(所有程序 > IBM Rational ClearCase XXX > Administration > ReportBuilder)。您可能没有注意到它,因为它被隐藏在“Administration”下,但它不仅适用于管理员 - 对于任何使用ClearCase的人来说,有许多有用的查询。
在Report Builder中,转到Elements > Checkins Since Date by User,并选择要报告的目录、日期以及您的用户ID,然后单击“运行报告”。
我在DOS shell中使用了这个命令(而不是Cygwin),以便(1)忽略目录,(2)获取提交注释:
cleartool find . -ver "eltype(text_file) && created_by(your_login)" -exec "cleartool descr -fmt \"%n: %c\n\n--\n\n\" \"%CLEARCASE_XPN%\"" >> checkins.txt