How SourceSafe Represents the Solution—the Data Model

When the solution is organized in a hierarchical structure, Visual Studio will add it to the SourceSafe database without any issues and match the folder structure.

To see how the solution looks in the database, open the database using Visual SourceSafe Explorer. For details on opening a database see the Using Visual SourceSafe Explorer section under Opening the Database earlier in this chapter.

How SourceSafe Represents the Solution—the Data Model

In this image you can see that above the OrbitalHotel solution folder there are two additional folders $/ and OrbitalHotel.root. If you remember, we've accepted these default settings when we added the solution to the database. It's now time to explain them.

The $/ folder is the absolute root folder in every SourceSafe database. We can make an analogy with a physical file system drive name, for example C:. This folder is specified in the Location field of the Add to SourceSafe dialog. All other folders are created under this folder.

Under the $/ folder there is the OrbitalHotel.root folder. This folder is specified in the Name filed of the Add to SourceSafe dialog. This is called a unified root folder and will contain all the files and folders in the solution. This will be very useful later when we will branch our solution. It also allows us to keep the hierarchical folder structure when we later need to add additional solutions and projects without breaking the tree.

Under the unified root folder, Visual Studio will create subfolders for each connection to the source control database. In the above example, a $/OrbitalHotel.root/OrbitalHotel folder was created and used for the solution connection's root. Because of the hierarchical structure of the solution on the local disk at the time of adding the solution to source control, all other projects in the solution have reused the solution's connection to the database. In other words, in the hierarchical structure, Visual Studio maintains the connection only to the solution root folder, the other ones being determined relatively to the solution's root folder; yet another benefit of having a hierarchical solution structure.

There is a symmetrical correspondence between the solution file system structure and the solution database structure:

How SourceSafe Represents the Solution—the Data Model

This structure will prove its effectiveness when getting the solution on other development machines.

Projects, Subprojects, and Files

Until now I've referred to the nodes in the SourceSafe database structure with the term folder. Although these actually represent physical file system folders, SourceSafe has another term to describe them. In the SourceSafe terminology they are referred to as projects.

We can see this if we right-click on an existing project.

Projects, Subprojects, and Files

In the hierarchical structure, a SourceSafe project contains additional projects (subprojects) and files, mapping the physical folder structure.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.15.31.141