ClearCase 中rmname 的描述

        ClearCase中,如果想要删除一个版本化的文件或者目录(文件和目录都是element),有两个可选的命令,即rmname和rmelem。rmelem命令用于将一个element从VOB中彻底删除,是比较“暴力”的,需要很谨慎的。rmname则是删element所在某个版本目录的目录项。这个命令的说明对其进行了详细的说明,可以通过cleartool man rmname查看到。本文主要翻译其中的描述(Description)部分,如下:
        默认情况下,只有在目录checkout后且要删除名称的element没有checkout,这样,这个element的名称才可以删除。rmname会在目录的checkout评论(comment)中添加了一行说明。
        通过去除element的名字或VOB的软链接(采用UNIX和Linux unlink的系统调用),rmname可以改变一个或多个checkout的目录。目录的老版本不会发生改变;删除的名称依然存在于老版本目录中。
        从checkin的目录版本中去除一个名字,可以使用-nco的选项。例如,去除一个指向已经删除的文件的软链接。
在snapshot view中,这个命令隐式执行element的更新(update)操作。
        例如:假设,检出(check out)一个目录(名字为 a.dir)的3号版本。只有当前检出的view可以看到这个版本 。rmname foo.c命令从checkout的目录中删除名称foo.c,但是在之前版本中留下了 foo.c的引用。当checkin目录后,所有view都可以访问版本4目录,该目录不包含foo.c。
必须注意的是:
        * rmname不会删除element本身,而删除element的引用。采用rmelem(要非常小心)删除VOB里element及其名字;   * 删除最后一次element的引用会孤立element。这样的element会被移入VOB中的lost+found目录中;
        * 去除VOB软链接的最后一次引用作用效果不一样。这取决于VOB是否存在副本;
        * 如果VOB不存在副本,链接会被删除;
        * 如果VOB有副本存在,这个链接会被移入VOB的lost+found目录中。
取消rmname操作
        为了恢复采用rmname命令删除的element的目录项,可以用ln命令建立VOB的任何前一个目录版本中element的硬链接(hard link)。例如:
        cmd-context checkout src                      | Checkout  parent directory     
        --------------------------------------------------------------------------+-------------------------------   
        cmd-context rmname src/msg.c              | Oops!        
         -----------------------------------------------------------------------------+-------------------------------   
        cmd-context ln src@@/main/LATEST/msg.c src/msg.c  | Restore  deleted name
        如果任何之前版本目录中都没有所要恢复的element的目录项,这就意味着这个element被孤立了,就是,被移入了lost+found目录了。可以用cleartool mv命令将这个element移到恰当的位置 (不能使用ln命令建立lost+found中element的链接)。
用户
        在VOB检出后,执行这个命令不需要特殊权限,可以参考checkout的命令说明。对应-nco选项,必须是下面的身份之一:
        *  VOB的拥有者
        *  root (UNIX and Linux)
        *  ClearCase管理组的成员 ( Windows下的ClearCase)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值