我需要在动态视图中移动VOB中的多个符号链接。
正如我previous question中所描述的那样,这对我来说并不像听起来那么简单,因为目标路径是相对于链接本身而不是VOB根或类似的东西保存的。如果ClearCase会调整这些链接中的路径信息,这不会是一个大问题,但很明显,它不会。
详细信息:我们假设以下文件夹结构:
/myVOB
/Originals
/LinksA
/SubDir
/LinksB
然后将链接移至位于myVOB/Originals/readme.txt
至myVOB/LinksB
的文件myVOB/LinksA/SubDir
将阻止该链接找到其目标,因为它正在查找myVOB/LinksA/SubDir/../Originals/readme.txt
。
有没有人知道在移动符号链接时是否可以告诉ClearCase调整路径?通常我会认为这应该是开箱即用的,但是人们永远不会知道ClearCase ......不过,也许有人可以尝试重现这个并告诉我它是否成功,也许这只是我系统上的一个错误? / p>
编辑:好的,所以看起来移动相对符号链接不支持开箱即用。我是否需要移动大量的符号链接,我现在正在编写一个脚本,它采用了许多文件/目录并将它们移动到一个新的位置。如果遇到符号链接(其目标可能是文件或目录),它不仅会调用cleartool mv
或其他任何内容,而是按照VonC发布的过程进行操作。
但我没有,所以我可能会手工完成。也许有人已经写过这样的剧本,那么这将是推广它的正确场所;)
答案 0 :(得分:3)
如果你考虑这个technote on "How to Manage symbolic links in ClearCase interop,似乎:
(即使您不在互操作环境中,即使您的Windows视图和Vob服务器都在Windows上)
如何更改VOB符号链接路径
修改VOB符号链接到相对路径的唯一方法是创建新的符号链接:
注意:如果VOB符号链接是使用绝对路径创建的,则无法编辑(修改)VOB符号链接以使用相对路径。
- 检查目录 - 使用
cleartool rmelem
命令删除旧的VOB链接 - 创建一个名称相同的新链接示例:
cleartool ln -slink -nc ../../same_file_name.txt
Check in the directory
备注强>:
建议您使用相对VOB符号链接而不是绝对符号链接。
绝对VOB符号链接要求您使用视图标记级别的绝对路径名称,例如\view-tag\VOB-tag\filename
。
因此,它们仅在创建它们的视图中有效。