Search code examples
clearcase

working in /vobs/some/path versus /view/view-tag-name/vobs/some/path


I have to use ClearCase at work and the basic workflow requires me to do something like:

cleartool setview <view-tag-name>

view-tag-name is a dynamic view I might add. From what I've gathered this opens up a new shell that allows me to access files in /vobs/some/path that go through a mounted MVFS file system. However this second shell on top of the existing shell breaks my Emacs client - Emacs daemon cooperation. Moreover, in another SO answer someone was saying that he didn't bother with setview at all and so instead of accessing:

  1. /vobs/some/path (from within a setview shell)

… he would access:

  1. /view/view-tag-name/vobs/some/path (without using a setview shell)

I've experimented a little and it seems that all cleartool commands work the same way whether I am in /vobs/some/path (in a setview shell) or whether I am in /view/view-tag-name/vobs/some/path (in a plain shell).

So my questions are:

  1. what's the difference between working in /vobs/some/path in a setview shell versus working in /view/view-tag-name/vobs/some/path in a plain shell?
  2. what is the proper term to use when referring to the /view/view-tag-name directory?
  3. why when I do ct lsview -l -properties -ful view-tag-name I don't see any reference to the /view/view-tag-name directory? Isn't this directory associated with the view?

Solution

  • what's the difference between working in /vobs/some/path in a setview shell versus working in /view/view-tag-name/vobs/some/path in a plain shell?

    Do not use cleartool setview: As I explained before, the cleartool setview command opens a subshell in which commands are supposed to be run, which can be problematic.

    Working in /view/view-tag-name/vobs/some/path means you remain in your main shell, with all its properties.

    what is the proper term to use when referring to the /view/view-tag-name directory?

    That references the full path view root folder (inside which you are mounting vobs and accessing versions based on the view config spec and its selection rules)

    In /vobs/some/path, you can still see the view you are in with cleartool pwv ("path working view").

    why when I do ct lsview -l -properties -ful view-tag-name I don't see any reference to the /view/view-tag-name directory?

    You are seeing the property of the view, which will then be mounted in /view/view-tag-name (on Unix) or M:\view-tag-name on Windows.
    Those properties make no assumption on the runtime usage of that view, they only display static metadata (like the view storage or the view type)