一、 lost+found目录简介
在软件配置管理工具 Rational ClearCase中,当你创建一个VOB库后,将自动产生一个目录:lost+found,
这个目录主要存放不再包含在VOB中任何一个目录版本中的元素(在ClearCase中,元素包括文件和目录) ,这句话听起来有些拗口,呵呵。简单来说,lost+found目录类似于Windows的回收站,所不同的是:在windows中进行删除操作后,文件将被放入回收站;而在ClearCase中,当一个元素在VOB中与其他元素的依赖关系被全部删除时,它才会被放入lost+found目录。
二、什么情况下 ClearCase的元素会被放入lost+found目录
当你做如下操作的时候, VOB中的元素将被放入lost+found目录:
1.使用 rename删除一个元素与其他元素的最后一个依赖关系
Rename命令不会删除VOB中的元素,只会把该元素与父文件夹之间的关系删除。如果一个元素与其他元素的关系全部被renamed,没有路径能访问到该元素,这时这个元素将被自动放入lost+found目录中。如果这个元素是目录时,那么它里面包含的子目录与文件都会被放入 lost+found目录。
2. 当一个目录处于 checkout状态时,如果在该目录中创建新元素,然后又将处于checkout状态的这个目录进行了 undo checkout操作,这种情况下你新建的那个元素将被放入lost+found目录,因为它已经找不到对应关系了。
3. 使用 rmver、 rmbranch 或rmelem删除一个目录版本最后一个依赖关系。
在 Rational ClearCase 中,目录也做为配置项管理,如果你把目录删除了,其下的子目录与文件就会没有正确的链接,这时这些子目录与文件会放到 lost+found 中。如果你确实不需要,可以在 lost+found 目录对它们进行彻底清除。反之可以恢复,以避免误操作带来的损失。
三、 lost+found中元素的命名规则
当一个元素被放入 lost+found目录后,我们会看到它的名字很长,好像很乱,其实ClearCase对它有一套统一的命名规则。当元素被放入lost+found目录后,名字将增加一个OID(Objedct ID),格式为:element_leaf_name.id_number。
举个例子:
文件放入 lost+found前的名称:build.log;
文件放入 lost+found后的名称:build.log.3e105a5cad674d0db12ad477fd11026c;
它的 element_leaf_name为build.log,3e105a5cad674d0db12ad477fd11026c是id_number。
四、 lost+found目录的特点
lost+found目录有几个独有的特性:
1. lost+found目录本身不能进行checkout操作。
2. 该目录里面的内容可以进行修改,即进行检入、检出操作。
3. 在 lost+found目录上无法创建分支,但是目录里面的内容可以创建。
五、 lost+found中元素的处理方法
一个有经验的配置管理人员不应该把文件移到 lost+found中,而应定期把文件归回原位或者清除lost+found文件夹中不再使用的文件。
为了节约空间,定期清理 lost+found目录的方法是必要的,方法如下:
1. 如果 lost+found目录中的内容仍然有用,可以将其移出并恢复:
• 将 lost+found中的内容移动到本VOB库中,使用命令:cleartool mv;
• 将 lost+found中的内容移动到其他VOB库中,使用命令:cleartool relocate;
误删除了元素后,不要着急,看看能否在 lost+found目录中找到并恢复它。如果被彻底删除,再通过备份的VOB库来恢复也不迟。
2. 使用 cleartool rmelem 命令将不再使用的元素删除;
如果 lost+found中的内容确实不再需要,可以使用rmelem彻底清除,以节约VOB的空间,就像你经常整理Windows的回收站一样。 需要强调的是,使用 rmelem 命令前一定要慎重,因为该命令将永久删除元素。
六、总结
平时大家在工作中可能不太关注 lost+found目录,其实它在文件恢复、节约工作空间方面都有不少的价值,希望本文能对你有所启示和帮助。
分享到:
相关推荐
- 示例:`cleartool rmelem -f "%CLEARCASE_PN%"` 删除当前路径下的 lost+found 目录中的文件。 #### 十四、查询文件修改记录 - `cleartool lshis -r -since "07-dec"`:此命令用于查询文件自指定日期以来的修改...
用于删除视图中的lost+found目录中的所有元素。 8. **查询历史记录**:`cleartool lshis -r -since 07-dec` 查看自指定日期(例如07-dec)以来的所有版本历史。 9. **检出和提交文件**: - `cleartool co -nc ...
- **用途**:将文件系统中的目录导入到 ClearCase 的版本控制系统中。 - **参数说明**: - `-r` 表示递归复制整个目录结构及其内容。 - `<源目录>` 需要导入的文件或目录路径。 - `<目标目录>` 导入后在 ...
以上是对 ClearCase 中一些常用命令的详细介绍。通过掌握这些命令,可以更高效地使用 ClearCase 进行软件开发项目管理。每个命令都有其独特的用途,在实际工作中根据具体需求灵活运用它们,能够极大提高工作效率和...
6. **删除lost+found**:在某些情况下,你可能需要清理视图中的`lost+found`目录,`find . -name '*.*' -exec 'cleartool rmelem -f "%CLEARCASE_PN%"'` 将删除这些元素。 7. **查询历史记录**:`cleartool lshis -...
该命令用于删除视图中的lost+found文件夹。 - `find . -name '*.*'` 表示在当前目录及其子目录下查找所有文件。 - `-exec` 选项用于执行指定的命令,此处是`cleartool rmelem`。 - `-f` 强制删除。 - `"%CLEARCASE_...