在ClearCase中,如果某个文件已被另一个视图使用以下命令检出,则可以创建未保留的checkouts:
ct co -unreserved <element>
您还可以使用以下命令添加要清除的新元素
ct mkelem <new_element>
但是,对文件使用mkelem命令要求文件的目录是签出的clearcase元素。
我试图在目录中创建一个新的clearcase元素。此目录最新由另一个视图检出,因此我需要进行无保留的结帐。无保留的结账工作完美。但是,当我尝试在无保留地检查目录后运行ct mkelem newFile
时,我收到此错误:
%ct mkelem newFile
创建评论“newFile”:.创建元素“newFile”(类型“text_file”)。
错误:用户[user_name]无法为此区域中的此文件类型或分支进行保留检出。文件是[/ vobs / directory / to / newFile @@ / main / 0]如果需要,您仍然可以进行无保留的结账。
这让我想知道......
有没有办法在无保留的目录结账中创建一个新的clearcase元素?
这似乎是一个自定义错误消息:“您仍然可以进行无保留的结账”。 这意味着ClearCase本身不会显示它。
因此,检查是否有任何VOB触发器可以强制实施这样的策略(没有无保留的目录检出):使用cleartool lstype -invob \aVob -kind trtype
,作为in this answer。
因为您可以以保留和未保留的方式同时签出文件夹...这可以导致evil twins,如此线程所示:
恶意双胞胎是从并行目录版本的用户引入的,来自另一个分支或同一分支中的不同版本(用户有一个旧的无保留结账,添加了另一个用户已经在版本树中的保留结账时添加的文件,因此你现在有邪恶的双胞胎。)