是否可以在没有触发器的情况下删除ClearCase分支上文件的版本0? 手动删除单个版本0文件手动删除分支上的所有文件自动删除

问题描述

假设我已在ClearCase视图中检出文件foo,这触发了创建该文件的分支名称my_branch的版本-该文件具有该分支的第一个版本名称。现在,我尚未签出文件-但具有该分支名称的版本0仍然保留。如何删除?我知道有某种方法可以使用“触发器”(我对此不太熟悉)。我可以通过一些命令手动将其删除吗?

注意:my_branch上有其他文件的版本;不应将其完全删除

解决方法

手动删除单个版本0文件

对于单个文件,按照OP中的要求:

(危险)命令为cleartool rmver

cleartool rmver util.c@@/main/my_branch/0

如果从my_branch创建main,那将是手动方法。

illustrated here的版本 保留任何悬空元素(分支,标签,超链接或属性元数据),您需要:

cleartool rmver –xbranch –xlabel –xattr –xhlink util.c@@/main/my_branch/0

(假设版本0是该分支上的唯一版本)

手动删除分支上的所有文件

正如我在“ how to remove a version in ClearCase”中提到的那样,如果您无意间在分支上创建了一些版本0,则删除它们的更好方法-全部-使用cleartool rmbranch:>

"cleartool rmbranch -force $myBranch"

您可以在“ Command to delete branches of Clearcase element with “0” versions”中看到它。
但这确实适用于所有部门。不是单个文件。

自动删除

自动方法通过mktrtype设置为I documented here
作为脚本,您可以使用:

那确实使用了触发器:我在这里只是出于完整性的考虑而提及它,尽管它不是您的首选方法。
对于偶尔的清理,rmver对于单独的0版本就足够了。
(对于其他任何情况,由于discussed herermver是危险的)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...