Pinning is most useful when applied to shared files, although it is not limited to shared files: You can pin any file. When you pin a shared file, however, you cannot thereafter make changes to it. Pinning is not the same as branching; for one thing, you are not making a copy of the file. For another, you are not planning to change the file. You are sticking a pin into the file so that a particular version of the file becomes the version that is part of your project.
If a file already pinned is then shared, and the pinned version is the version that is shared, the projects sharing the file cannot change it. If a file is shared first, and then pinned in one project, other projects can still change and update the file.
For information on how to pin and unpin files in VSS, refer to: