Using Visual SourceSafe - Cloak

This article is a part of SourceSafe / VSS Tutorial

Cloak is a useful little function in version control. It allows us to specify the projects to be ignored during recursive operations such as Get, Check In, Check Out, and Undo Check Out.

Why Cloak

Some of the subprojects may never or rarely be used. However, when we do some recursive operations like Get, all the sub files and folders are operated.

For example, the help document needs to be updated whenever a new release comes out. It takes a long time to get the whole project of the help document, especially the image files. To improve efficiency, we can put all the image files in a subproject and cloak it. This way, the subproject cloaked will not be downloaded to local when getting the whole project.

To Cloak a Visual SourceSafe Project

To cloak a project, we need to launch the Project Properties dialog first: right click the target project and select Properties.

Cloak – Launch the project Properties dialog (Cloak – Launch the project Properties dialog)

In the General tab of the project Properties dialog, we check the This project is Cloaked for me checkbox to cloak a project, as seen in the following figure:

Cloak a Visual SourceSafe project (Cloak a Visual SourceSafe project)

When a project is cloaked, the icon of the project is turned to grey. To de-cloak a project, just simply uncheck the This project is Cloaked for me checkbox in the project Properties dialog.

How Cloak Works

If a project is cloaked, Get, Check In, Check Out, Undo Check Out, and Project Difference operations do not apply to the project when we do these operations on the cloaked project’s parent project. But when we do these operations on the cloaked project itself, these commands still work as normal.

For example: Suppose that we work on a project called $/OurApp. In this project there are subprojects called Code and Tests that we need and another subproject called Docs, which we almost never use. Now, we cloak the Docs project and recursively Get $/OurApp, the Docs project (and its subprojects) will be ignored.

How Cloak Works

However, it does not mean that we cannot get a cloaked project. For example, if we want to get all the sub files and folders in the $/OurApp/Docs project which is cloaked, we can make the focus on the project (like clicking on the project) and then perform Get operation.

Once a project is cloaked, VSS will record the name and location of the project. If you delete or purge the project and create a new project with the same name in the same location, VSS will cloak the new project automatically. If a project is renamed or moved, the project will lose the cloak information. So besides unchecking the This project is Cloaked for me checkbox in the project Properties dialog, we can rename or move the project to another place to de-cloak a project. ^_^

SourceAnywhere - the SQL Server-based SourceSafe Replacement

The SQL Server-based Source Control Software Designed to be a SourceSafe Replacement

SourceAnywhere for VSS - the Fastest SourceSafe Remote Access Tool Recommended by Microsoft

The Fastest SourceSafe Remote Access Tool Recommeded by Microsoft

Links: Previous article ««: Branch in SourceSafe / VSS Next article »»: Label in SourceSafe / VSS SourceSafe How To series home page: VSS / SourceSafe Tutorial