For updating the project, there is the option of writing a script that manually updates the .proj files - they're just XML.
Does anyone have any good suggestions for working on teams where some members do not use Visual Studio? What are other people doing?
This is a general questions, but my specific situation is developing ASP.NET MVC applications using Visual Studio 2008 and SVN for source control.
In our office we have small teams. Usually we have one or more developers using Visual Studio and one graphic/html/css designer using a Mac with no Visual Studio.
This has a couple of problems.
First, without visual studio the desinger can't see his changes easily. The designers got us to use a technique that they were using on the PHP side of our office. We use a build server so the designers check in their changes and then view them in a web browser pointed at our build server. Not quite what they want? They make a tweak and check it in again.
Second, whenever I deploy a project to production I always either do a Publish or use a Web Deployment Project. The problem with this is that if a designer adds a file to the project file structure it isn't automaticly added to the Visual Studio Project file. So someone has to go through all the folders and look for files that aren't in the project to make sure everything gets included. Once the file is added, the designer can change the file no problem, unless the delete it which causes heartburn for Visual Studio.
Other people must have these same issues. How do they handle them?
We can get our designers to use Visual Studio but it really doesn't mesh well for their workflow.
I'm mostly concerned with the 2nd issue. I don't like issue 1 but our current solution works, however I would really like to know if people have good suggestions.
I know this is a simple solution, but simple is good. There is a button on the Solution Explorer toolbar to "Show All Files", which causes VS to show ALL files that exist in the root and subfolders where your .sln and project files are. This makes it easy to see files that are physically located in those folders, but are not included as part of your project. It's very fast and easy to select all of those by shift-click or control-click, right click, and go to "Include in Project".
Likewise, it's easy to right-click and exclude a file that has the yellow exclamation point, because it no longer exists.
As you say the problem is that the file is not included in the Visual Studio Project.
Since the designer does not have VS he cannot add the file to the VS project.
One way to fix it, is to give the designer "Update" but not "Create" rights. Then when they need to start work on a new file, they must go to a developer and ask for the file to be created and added to the VS project.
In that way no file can be added without it being added to the VS project at the same time.
We have the same problem in our office too. For web projects, we always use File->"New Website" instead of "New project". For "projects, the graphics need to tell the developers what files they added or you have to figure that out by going through the subversion history.
Expression Suite was designed for this issue. Expression Web has the ability now to run a web application via it's own built in webserver just like visual studio can. The suite is tuned more for designers and has the focus on managing stylesheets and the creation of HTML.
You can find more information on the Expression Suite website.
Hope this works for you.