使用/ vobs / some / path对/ view / view-tag-name / vobs / some / path

时间:2016-10-31 17:33:36

标签: clearcase

我必须在工作中使用ClearCase,基本工作流程要求我做以下的事情:

cleartool setview <view-tag-name>

view-tag-name是我可能添加的动态视图。根据我收集的内容,这将打开一个新的shell,允许我访问/vobs/some/path中通过已安装的MVFS文件系统的文件。但是,现有shell顶部的第二个shell会破坏我的Emacs客户端 - Emacs守护程序的合作。此外,在另一个SO答案中,有人说他根本不打扰setview,所以不要访问:

  1. /vobs/some/path(来自setview shell)
  2. ......他会访问:

    1. /view/view-tag-name/vobs/some/path(不使用setview shell)
    2. 我已经进行了一些实验,似乎所有cleartool命令的工作方式都相同,无论我是/vobs/some/path(在setview shell中)还是我在/view/view-tag-name/vobs/some/path(在一个普通的shell中)。

      所以我的问题是:

      1. /vobs/some/path shell中使用setview与在普通shell中使用/view/view-tag-name/vobs/some/path工作之间的区别是什么?
      2. 在引用/view/view-tag-name目录时使用的正确术语是什么?
      3. 为什么当我ct lsview -l -properties -ful view-tag-name时,我看不到对/view/view-tag-name目录的任何引用?该目录是否与该视图相关联?

2 个答案:

答案 0 :(得分:1)

  

/vobs/some/path shell中使用setview与在纯shell中使用/view/view-tag-name/vobs/some/path工作之间的区别是什么?

不要使用cleartool setviewAs I explained beforecleartool setview命令会打开一个子shell,其中应该运行命令,这可能会有问题。

使用/view/view-tag-name/vobs/some/path意味着您将保留在主shell中及其所有属性。

  

引用/view/view-tag-name目录时使用的正确术语是什么?

引用完整路径视图根文件夹(在其中安装vobs并根据视图配置规范及其选择规则访问版本)

/vobs/some/path中,您仍然可以通过cleartool pwv(&#34;路径工作视图&#34;)看到您所在的视图。

  

为什么当我ct lsview -l -properties -ful view-tag-name时,我看不到对/view/view-tag-name目录的任何引用?

您正在查看视图的属性,然后将其安装在/view/view-tag-name(在Unix上)或M:\view-tag-name在Windows上。
这些属性不假设该视图的运行时使用,它们只显示静态元数据(如视图存储或视图类型)

答案 1 :(得分:0)

如果您的工作流程是启动emacs然后从那里设置视图,那么事情确实很奇怪。

setview与startview的唯一不同之处在于它启动了chrooted shell。只有那个shell及其后代才会在/ vobs / vobtag /中看到源代码。如果你在多个&#34; setview&#34; shell(对于要维护的应用程序的多个版本,多个阶段等),您将有多个相同的shell通过明显相同的路径访问相同文件的不同版本。

使用ClearCase时要注意的一件事是目录也是版本化的。因此,如果出现以下情况,则在一个视图中添加的文件可能不会出现在另一个视图中:

  1. 它们基于父目录的不同版本;或
  2. 尚未检入添加到源代码管理的文件的父目录。
  3. 除非你的构建过程需要在/ vobs / vobtag上看到VOB内容,否则我同意@VonC关于不使用setview的信息。

    我无法在VonC的其他评论中添加任何内容。