Search code examples
visual-studioversion-controlvisual-sourcesafe

Visual Source Safe - Removing files from web projects


I'll try to make this as straight forward as possible.

  1. Currently our team has a VSS database where our projects are stored.
  2. Developers grab the code and place on their localhost machine and develop locally.
  3. Designated developer grabs latest version and pushes to development server.

The problem is, when a file is removed from the project (by deleting it in VS2008) then the next time another developer (not the one who deleted it) checks in, it prompts them to check in those deleted files because they still have a copy on their local machine.

Is there a way around this? To have VSS instruct the client machine to remove these files and not prompt them to check back in? What is the preferred approach for this?


Edit Note(s):

  1. I agree SVN is better than VSS
  2. I agree Web Application project is better than Web Site project
  3. Problem: This same thing happens with files which are removed from class libraries.

Solution

  • You number one way around this is to stop using web site projects. Web Site Projects cause visual studio to automatically add anything it finds in the project path to the project.

    Instead, move to Web Application Projects which don't have this behavior problem.

    Web Site projects are good for single person developments.

    UPDATE:

    VB shops from the days gone past had similiar issues in that whatever they had installed affected the build process. You might take a page from their playbook and have a "clean" build machine. Prior to doing a deployment you would delete all of the project folders, then do a get latest. This way you would be sure that the only thing deployed is what you have in source control.

    Incidentally, this is also how the TFS Build server works. It deletes the workspace, then creates a new one and downloads the necessary project files.

    Further, you might consider using something like Cruise Control to handle builds.