为了账号安全,请及时绑定邮箱和手机立即绑定

为什么Perl找不到ClearCase中的文件?

为什么Perl找不到ClearCase中的文件?

为什么Perl找不到ClearCase中的文件?这段Perl告诉我,ClearCase中的文件在它存在时不存在;$x = "PATH/TO/FILE"if (-e $x) {    print "This file exists on the file system";} else {    print "I can't see this file";}有人见过这个吗?有些文件返回很好。把我弄糊涂了。ClearCase视图是动态的,托管在Unix上。这段代码返回的是一个文件存在,而另一个文件在同一视图上的同一文件夹中时不存在。
查看完整描述

3 回答

?
繁星coding

TA贡献1797条经验 获得超4个赞

ClearCase将其“文件”存储为目录

什么艾瑞克想告诉你是ClearCase使用的扩展路径名,因为它用版本路径.

因此,在动态视图中,可以描述任何文件以显示其版本控制路径:

$ ct ls
myFile
$ ct descr -l myFile
myFile@@/main/3

在动态视图中,您可以实际探索文件的版本(因此成为“文件即目录”)部分。

$ cd myFile@@
$ ls
main
$ cd main
$ ls3$ cat 3... // content of third version of myFile

现在,如果这里使用ClearQuest(问题跟踪系统),它将引用ClearCase的活动(文件集的更改集)。

但是对于ClearCase版本对于一个文件(由ClearQuest引用或通过另一种方法获得),可以很好地在动态视图(“rmname”实际上)中删除。
这意味着一个文件可能被ClearQuest或某些ClearCase活动引用,但在动态视图中不能直接在ClearCase中看到。
但是,它的扩展路径名仍然可以在相同的动态视图中访问。


查看完整回答
反对 回复 2019-07-12
?
潇湘沐

TA贡献1816条经验 获得超6个赞

ClearCase将其“文件”存储为目录。您可以将CD存储到一个文件中,并进入它用来存储文件所有修订版的实际目录;虽然OS钩子通常正常工作,但这可能导致Perl无法识别其中的一些文件。


查看完整回答
反对 回复 2019-07-12
?
慕容3067478

TA贡献1773条经验 获得超3个赞

此外,目录是版本化的;该文件可能不存在于所选目录的版本(通过视图的配置规范)中。在一般情况下,您可能还需要在中间目录上使用扩展路径语法。G./foo/bar@@/main/1/baz.txt@@/main/3

查看完整回答
反对 回复 2019-07-12
  • 3 回答
  • 0 关注
  • 477 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信