If you’ve ever had two or more source-safe projects with shared files, you might be shocked to learn that Visual SourceSafe 2005 breaks one of the holy grails of good design: user expectations.
You would expect that, if you delete a shared file from one project, it gets branched. I mean, you deleted it, right? You said goodbye, kaputsky, sayounara! But alas, Visual SouceSafe 2005 shares deleted files!
To test this out, try the following:
- Create a new project (call it "Test-A")
- Add some files (some HTML or text files work best)
- Create a new project (call it "Test-B")
- Browse into Test-A, and select and drag some files into Test-B to share them
- Delete one of the shared files (non-permanently)
- Browse to Test-B
- The file is still shared!
Shocking! What’s worse, the deleted file continues to be updated if the other version is updated! Try it for yourself:
- Browse to Test-B
- Check-out, edit, and check-in one of the files you deleted
- Browse to Test-A
- Recover the deleted file (right-click on the project and select Project Properties, go to the Deleted Items tab, and click Recover)
- View the file
- The file has the same changes as its twin in Test-B!
The only consolation you may have, is that if you destroy permanently when you delete a shared file, it becomes branched–albeit with a hideous, ugly warning pop-up.
So consider yourself warned!
By Ashiq Alibhai
By Ashiq Alibhai


