我希望能够对linux上快照视图中文件的符号链接的文件使用cleartool命令。
>cd /my/build/area/
>ls -l file.c
lrwxrwxrwx 1 sword none 123 Jun 19 16:57 file.c -> /my/snapshot/view/file.c
>cleartool co file.c
cleartool: Error: Not an object in a vob: "file.c".
同样,当我尝试做cleartool更新时,我得到了
cleartool: Error: Unable to determine version for VOB root directory element
cleartool: Error: Unable to access "/my/build/area/file.c" No such file or directory."
我可以cd到视图并在文件上使用cleartool没问题。但是对视图中文件的符号链接的cleartool操作会给我错误。
我问的原因是我的构建环境包含一个本地目录,其中包含每个文件的符号链接到快照视图。有没有办法我可以这样做而无需cd到快照视图?
注意:我在cshell中使用ln -s命令在我的构建区域中创建文件。我没有使用cleartool ln。我不是试图用vob或另一个vob将文件符号链接。
编辑: 值得注意的是,尝试'cleartool更新'符号链接会写入视图.updt文件,因此虽然符号链接上的cleartool命令确实失败,但该工具的某些部分具有视图上下文。
答案 0 :(得分:0)
有没有办法我可以这样做而无需cd到快照视图?
可能不是:制作一个解析符号链接并执行相应检出的包装脚本比尝试使cleartool co
直接在符号链接本身上工作更容易。
快照视图存储在一个我们不希望弄乱构建工件的公共网络驱动器中,我们不需要通过网络构建流量。目前,我们在“建立”区域工作。并在视图中清除操作。我想这样做,所以所有操作都可以在构建区域完成
这是一个构建配置问题:您应该能够在ClearCase视图中工作,同时在单独的文件夹(视图外)中配置二进制构建:不需要符号链接。
详细说明:
正如我在" clearcase symbolic link file not visible from a snapshot view"中提到的那样,您可以查看" Symbolic links in snapshot views":
在加载快照视图的上下文中,链接被视为VOB链接(指向VOB内的对象的链接)和非VOB链接(指向VOB外部的链接)。
- 遵循硬VOB链接;符号链接是复制创建的。如果无法解析VOB链接,则会导致错误。
- 如果可能,解析非VOB链接,但如果无法解析则不会出错。
在Linux或UNIX系统上,如果加载规则选择符号链接,则链接和链接目标将复制到快照视图中(无论加载规则是否选择链接目标)。 与动态视图一样,您无法查看符号链接;你必须检查符号链接目标。
所以你需要检查一下:
cleartool ln
)可以解析但在您的情况下,您在ClearCase快照视图之外。
答案 1 :(得分:0)
ClearCase需要视图上下文来确定您指向它的对象是什么。由于您不在视图中,因此无法解析链接以查找实际的文件元素。
你有什么理由可以在视图中工作吗?