Находятся ли исключенные файлы под контролем исходного кода вместе с остальными? Если нет, просто убедитесь, что все проверено, выберите новое временное расположение, переместите старый каталог в качестве резервной копии и перенесите временную папку туда, где был старый.
Если эксперименты проверены на управление исходным кодом, это немного сложнее - вам, вероятно, придется пойти с анализатором файлов проекта. Это может быть не очень сложно, хотя.
РЕДАКТИРОВАТЬ: Хорошо, если все это в SVN, я предлагаю вам написать очень сырой анализатор проекта. Дайте ему список выражений XPath (или чего-то подобного) для выбора в качестве «вероятно путей». Выберите все в файле проекта и скопируйте каждый выбранный файл в новое место (включая подкаталоги и т. Д.). Также скопируйте файлы проекта и файлы решения. Затем попробуйте собрать - если не получится, вы что-то упустили: повторите.
Продолжайте, пока он не соберется, затем протестируйте его. До тех пор, пока все в порядке, вы можете сдувать все остальное:)
РЕДАКТИРОВАТЬ: Вот начало того, о чем я говорю:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Xml.Linq;
public class ProjectParser
{
static void Main(string[] args)
{
XDocument doc = XDocument.Load(args[0]);
XNamespace ns = "http://schemas.microsoft.com/developer/msbuild/2003";
DumpMatches(doc.Descendants(ns + "Compile")
.Select(x => x.Attribute("Include").Value));
DumpMatches(doc.Descendants(ns + "AssemblyOriginatorKeyFile")
.Select(x => x.Value));
}
static void DumpMatches(IEnumerable<string> values)
{
foreach (string x in values)
{
Console.WriteLine(x);
}
}
}
(Первоначально я пытался использовать XPath, но из-за проблем с пространством имен это было неприятно.)