by Lisa Hooper - GUI Computing
As an enthusiastic user of SourceSafe 5.0 I had often wondered about the 'Web' menu item, but never actually bothered to find out what it was all about. If you have ever found yourself in the same position this article may provide some insight into this lesser known feature of SourceSafe.
The Web feature of SourceSafe allows you to achieve the same level of source code control over you web site as you have over your Visual Basic projects. Like any SourceSafe project a web project can be checked out by a developer modified and then checked back in. In addition to this the new code can be checked for invalid links and effortlessly deployed on your existing live web.
To create a SourceSafe web project you need first create the top level web project as you would normally create a project in SourceSafe. Next use the SourceSafe Administrator to define the project as a web project. Under the tools - options menu is a dialog box which has a tab called 'Web Projects', from here browse for the project that you have decided will be a web project. In the URL box enter the top level URL for your web (i.e. http://www.myweb.com.au) and in the Deployment Path box enter the path on you server were your web is stored (e.g. \\myserver\myweb\IServer\wwwroot). This is all you need to do on the administration side of things.
From there you can create subprojects under you main web project or simply drag the main web directory from your server onto the SourceSafe web project which will create all necessary sub projects (note: only use this approach if you want all your web files under SourceSafe control). You will note that all sub projects of the main Web project are normal SourceSafe projects and it is only the top level that is the designated web project.
The deploy option on the Web menu allows you to deploy newly created and modified files to you existing web server. Any files that have changed will be written over and any new SourceSafe projects will be deployed as a new branch to your existing Web hierarchy. You can deploy at any level in the web hierarchy and of course files and directories will not be created on your web server unless you have permission to do so.
Any new directories created on you web server will inherit the permission of the directory above it. This is important if, like us, you intend to use Index Server to provide search capabilities on your web, as it too respects NT permissions, making this a really easy way to limit search results.
Before deploying a modified or new web is useful to check that all the links are valid. The SourceSafe check hyperlinks menu option can be used to perform this checking. You should note that this utility will check hyperlinks against those files in SourceSafe not the ones in your live web and will not check any external links. Unfortunately, it also appears to neglect checking any intra-file links, so you'll need to make sure they're right manually.
Overall, it seems that the SourceSafe web functionality provides an excellent means of achieving the same control as you would expect in any programming development, as well as a few other features that are specific to web development. The administration side of things has the feel of an interface "tacked on" to the existing structure but other than that it hums along nicely.