如何在未保留的签出目录中创建新的 clearcase 元素?

How do I create a new clearcase element inside an unreserved checked out directory?

背景

在 ClearCase 中,如果某个文件已经被另一个视图使用以下命令签出,您可以使 checkouts 成为未保留的:

ct co -unreserved <element>

您还可以使用以下命令向 clearcase 添加新元素

ct mkelem <new_element>

但是,在文件上使用 mkelem 命令要求文件的目录是签出的 clearcase 元素。

问题

我正在尝试在目录中创建一个新的 clearcase 元素。此目录当前已由另一个视图检出,因此我需要进行无保留检出。无保留结账工作完美。但是,当我在对目录进行无保留签出后尝试 运行 ct mkelem newFile 时,出现此错误:

% ct mkelem newFile

Creation comments for "newFile": . Created element "newFile" (type "text_file").

ERROR: User [user_name] cannot make reserved checkouts for this file type or branch in this area. File is [/vobs/directory/to/newFile@@/main/0] You can still make an unreserved checkout if needed.

这让我想知道...

问题

有没有办法在目录的未保留签出中创建一个新的 clearcase 元素?

这似乎是自定义错误消息:"You can still make an unreserved checkout"。
这意味着它不是由 ClearCase 原生显示的。

所以检查是否有任何 VOB 触发器可以执行这样的策略(没有目录的无保留签出):使用 cleartool lstype -invob \aVob -kind trtype,如 .

因为您可以以保留和非保留的方式同时签出一个文件夹...这可能导致evil twins,如该线程所示:

evil twins were introduced from users in parallel directory versions, either from another branch or different versions in the same branch (a user had an old unreserved checkout, added a file that another user already added in a reserved checkout later in the version tree, thus you now have evil twins.)