Jump to content


What does P4VS' "Treat solution/projects as directories" actually do?

p4vs

  • Please log in to reply
4 replies to this topic

#1 sneftel

sneftel

    Member

  • Members
  • PipPip
  • 10 posts

Posted 20 November 2013 - 11:08 AM

Quoth the user manual about the "Treat Solution/Projects as directories when selected" option:

Quote

Select to treat solutions and projects as directories when P4VS runs Perforce commands.
Which doesn't really illuminate things. The manual says it improves performance with large solutions, which sounds promising to me, but the p4 commands which are run on load appear to be the same with the option on or off.

One note on my situation: The solution file is not in a directory above the vcproj files (or most of the source files), and neither the sln nor the vcprojes are checked in to the depot (they're autogenerated). Might either of those make a difference?

#2 p4bill

p4bill

    Advanced Member

  • Members
  • PipPipPip
  • 216 posts

Posted 20 November 2013 - 07:40 PM

It is supposed to run commands on the solution or project directory, rather than on all of the files under the project or directory individually. For example: p4 fstat //sln_dir/... vs p4 fstat //sln_dir/file1 p4 fstat //sln_dir/file2 p4 fstat //sln_dir/file3, etc.

Sounds like that is not working in your case, and it could certainly be due to generated projects and solutions and their location. Some work is being done on this functionality for the next release. Some questions related to your setup:

Where is the solution file located if not in the folder at a solution root?

Are all of your projects under a common folder?

Where is the solution file in relation to the project files?

What else is in the folder where the solution file is located?

If there are files or sub directories in the folder where the solution is located, are they part of the solution?

#3 sneftel

sneftel

    Member

  • Members
  • PipPip
  • 10 posts

Posted 21 November 2013 - 10:59 AM

The directory structure is as follows:

//depot/foo/bar/Branch  (top directory of the branch; all source is underneath)
//depot/foo/bar/Branch/Workspace (contains the solution file)
//depot/foo/bar/Branch/Source (root of the dirtree containing almost all the source files)
//depot/foo/bar/Branch/Source/A (contains A.vcproj; all source files for project A are subdirectories of this)
//depot/foo/bar/Branch/Source/B (contains B.vcproj; all source files for project B are subdirectories of this)

The solution directory contains the solution, the sdf and suo files, and the ipch dir. Doesn't contain any files that are part of the solution.

#4 p4bill

p4bill

    Advanced Member

  • Members
  • PipPipPip
  • 216 posts

Posted 21 November 2013 - 06:08 PM

A follow up question from our lead:

Are all the files under the directory with the sln file ("//depot/foo/bar/Branch/Workspace" in your example), part of the solution or are there files for multiple solution intermixed in the sub directories? If intermixed, is it by project ? I.e. given projects, A,B and C, does one solution contain Projects A and C and one contain B and C?

#5 sneftel

sneftel

    Member

  • Members
  • PipPip
  • 10 posts

Posted 22 November 2013 - 10:12 AM

There's only one solution file, so no other solution files to intermix with. But there are source files in the project subdirectories which are not part of the solution (generally because they're for a non-win32 architecture). A project's source files all come from within its own directory tree, though.





0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users