У меня есть проект с возможно 200+ проектами. Это старая птица. Чтобы сделать локальные сборки быстрее, я запустил диагностическую сборку. Похоже, что решение сборки и ссылки на проект ссылаются на msbuild некоторое время. VS, похоже, делает это быстро, есть ли способ заставить MSBuild использовать кеш для этих ссылок или как-то быстрее его решить?
Кажется, MSBuild не нужно будет часто ссылаться на ссылку на сборку с инкрементной сборкой, верно?
Есть ли способ заставить MSBuild сообщать о своем внутреннем дереве зависимостей для этого?
VS использует один и тот же механизм MSBuild для выполнения сборки, поэтому независимо от производительности, которую вы наблюдаете от VS, вы сможете достичь, запустив сборку из командной строки с помощью MSBuild.exe.
Следует иметь в виду несколько моментов, которые могут объяснить разницу в скорости сборки между VS и командной строкой:
Если вы хотите реплицировать это из командной строки, просто передайте параметр BuildProjectReferences = false. Например:
msbuild myproject.csproj /p:BuildProjectReferences=false
msbuild MySolution.sln /m