Don't close all files when a project file is edited
When a project file is edited on the file system (e.g. source control pull), you'll currently get a prompt: "The project '<name>' has been modified outside the environment"
My options are to not reload, often not being able to compile, or reload the project closing everything I have open...even if it's completely unrelated to the project change (added image files for example). This causes a huge productivity loss on a rapidly iterating project (Stack Overflow in this case), I have to reload the project then spend time opening/searching for whatever I was working on before it happened. In most cases it's more efficient to just close and re-open Visual Studio so what I'm working on (open editors) is preserved.
Can we not get a delta performed here, and just mirror adding/removing the file in our local in-memory project tree when that's what happened? In our use case at least, that's what happens 99% of the time: a file was added, removed, or nested...no other project changes. I understand reloading when the project changes in other ways, but for simple inclusion deltas a reload and the resulting file closure is very aggravating, and a big time sink.
Matt Lintz commented
I use the workspace reloader which is very helpful but but still +3 by me
David Votrubec commented
3 votes by me
Workspace Reloader - a lightweight alternative to VSCommands: http://www.hanselman.com/blog/IntroducingWorkspaceReloaderAVisualStudioAddInToSaveYourOpenFilesAcrossProjectReloads.aspx
BTW, I just added three votes.
Still a big issue, but some of the pain can be removed by using the VSCommand plugin. More info here: Reloading all projects with VSCommands by Jimmy Bogard http://lostechies.com/jimmybogard/2011/01/27/reloading-all-projects-with-vscommands/