DOs and DONTs – Adding a Solution to VSS

Add a new Solution and Projects to the VSS:



Count on the VS.NET => “Add Solution to Source Control…” to add your solution

and projects to the VSS.

It will create such a mess in the VSS, a mess you’ll find difficult to clean up later on, that you’ll be

sorry for the moment you’ve chosen this option.

In addition, it will not give the desired (and recommended) structure:



   – MyWebProject

   – MyClassLibrary1

   – MyClassLibrary2

   – …



DO –

Follow the steps in this great post. I truly believe this link is a MUST

for every developer who’s working with VS.NET and VSS on a daily basis.


I hope this will help you all…






Oren Ellenbogen


2 thoughts on “DOs and DONTs – Adding a Solution to VSS

  1. Hey there !

    We don’t add the solution file to the VSS at all – only the proj files.
    And besides that – although the proj file is in the vss – we remove the "read – only" attribute
    on that file on the developer’s station – so that any developer can add files without the headache of getting the latest proj file version and checking it out .

    When we need to publish a version ( to the QA / production ) we just get all files from vss and include them in the project .

    It’s surely not the "work-by-the-book" method .. and it has it’s minuses … but it’s not that bad either.

    Anyway – congradulations on the opening of the blog !

  2. Hey Alex,
    1. Your project file will be checked-in in the VS.NET if i’m not mistaken, even though it’s not read-only, how do you add files into it without checking it out first ?

    2. I don’t like the idea that the solution file isn’t in the VSS, I saw it in a couple of projects I’ve worked on and it seems that the "new-box deployment" just get a little harder for no real reason.
    In addition, if someone will add a project to the solution, it will be very difficult for me to know about it (unless my co-worker is nice enough to tell me about it).
    "NIGHTMARE SCENRIO" – If he’ll add files to my project & a reference to his new project, the next time I’ll "getlatest" on this project I’ll get a lot of errors which will force me to start wondering if I don’t have the new project(s) or maybe a file is missing (due to your project is "not in VSS" system) and eventually do a "dirty" getlatest via the VSS explorer instead of "getlatest" on the sln file using VS.NET which will create the directory for me.
    It doesn’t sounds right to me.

    3. MOST IMPORTANT – check out of a .csproj file isn’t an headache unless you make it so – the steps should be:
    1. checkout the .csproj
    2. add your file.
    3. rebuild the project (verify that you don’t check-in files that can’t compile properly).
    4. Check in the .csproj & your new file (BOTH!).
    5. checkout your new file and you can work in peace.

    I estimate this process in 10 seconds (15 for the first time), reasonable time for my opinion.

    p.s – thanks ! ;-)

Comments are closed.