Visual SourceSafe 2005 Internet Provider

In a previousentry I spoke negatively about Visual SourceSafe 2005, inparticular regarding the internet functionality (functionality thatpromises the HTTP transport accessibility of a limited number ofsource control options, in a client/server fashion. This iscritical if you want to use SourceSafe functionality over afirewalled connection, or a limited bandwidth connection, andbrings a limited amount of SourceOffSite-like functionality to thevanilla SourceSafe).

While my remarks about the server-side configuration of thisfunctionality still stand (it’s a terrible setup that fails onanything but a clean OS install), I finally took a few moments andfigured out why I couldn’t do source control operations with theinternet plug-in (e.g. it was reverting to SMB, thrwarting myability to get some throughput metrics) – The problem was thatI had failed to select the Microsoft Visual SourceSafe(internet) plug-in as the current plug-in provider. Aftersetting that, the internet option works smoothly. I’ll have anentry about the results of that soon.

To explain how this confusion could happen, consider how yousetup a connection in Visual Studio 2005 (which is the only placewhere this remote option works).

First, or so it appears, you choose which technique you’llconnect with for this new source database entry.

ss_internet

Then you tell it where to find the web service, and whatdatabase for the web service to use.

ssconfig

Don’t worry about that UNC path there – the help tells us…

Note: Because the Web service can serve multiple databases,you must specify the known path of the Visual SourceSafe database.You do not need local access to that path, it is used by the VisualSourceSafe Web Service to communicate with the database.

Great! Easy peasie!

Not quite. Everytime I tried open the new connection, it wasworking — but then I looked on the other “machine” (a virtualmachine) and noticed all of the SMB connections from my machine.That tricky devil was opening the database the old fashioned way.So I blocked network access to the share (still allowing itlocally), trying to force it to use the internet connectivity thatit appeared that I was configuring, to get this error when tryingto add an internet database.

sserror

Of course this is nonsense – it isn’t the web service that’shaving the problem, as the web service on the remote PC can accessthe files fine. The problem is that the SourceSafe plug-in on mymachine was trying to open the files through the file share usingold-style SMB.

Finally I came across the provider setting, choosing..

ss_plugin

Now the functionality works. On the bright side thesame SourceSafe database entry can be used for both SMB andinternet connectivity, switching the plug-in depending uponconnection, however it would have been nice if the brain-deadconfiguration and help were a little more helpful with this.