Доверие, позволяющее строить параллельно в VSTS

Я рассматриваю возможность включения:

Строить параллельно

Я хотел бы знать, как сборка происходит в Visual Studio локально, с теорией, что если она работает нормально локально параллельно, я должен быть достаточно безопасным в VSTS.

В прежние времена параллельное построение было чем-то, что можно было включить с помощью командной строки msbuild voodoo, и, по моему опыту со сложными проектами, он редко использовал другие ядра процессора.

Но в Visual Studio 2017 это очень просто, и теперь у меня есть хороший проект с нуля (счастливые дни):

максимальное количество сборок

Могу ли я узнать из результатов сборки Visual Studio, сколько проектов фактически было построено параллельно, чтобы придать мне уверенность в настройке VSTS?

1 ответ

Решение

Конечно, обратитесь к этим шагам, чтобы изменить многословность вывода MSBuild (в том же окне вашего скриншота):

  1. Инструменты => Настройки
  2. Выберите Проекты и Решения => Построить и запустить
  3. Выберите Normal в MSBuild.

Тогда журнал сборки в окне вывода VS будет выглядеть так:

1>------ Rebuild All started: Project: MVCCore20, Configuration: Debug Any CPU ------
2>------ Rebuild All started: Project: ConsoleApp1, Configuration: Debug Any CPU ------
3>------ Rebuild All started: Project: ConsoleApp2, Configuration: Debug Any CPU ------
4>------ Rebuild All started: Project: ConsoleApp3, Configuration: Debug Any CPU ------
2>Target CoreClean:
2>  Deleting file "D:\1.0_Starain\1.0_Work\4.8_VSO\1.1_Projects\2017\MVCCore20\ConsoleApp1\bin\Debug\netcoreapp2.0\ConsoleApp1.deps.json".
2>  Deleting file "D:\1.0_Starain\1.0_Work\4.8_VSO\1.1_Projects\2017\MVCCore20\ConsoleApp1\bin\Debug\netcoreapp2.0\ConsoleApp1.runtimeconfig.json".
2>  Deleting file "D:\1.0_Starain\1.0_Work\4.8_VSO\1.1_Projects\2017\MVCCore20\ConsoleApp1\bin\Debug\netcoreapp2.0\ConsoleApp1.runtimeconfig.dev.json".
2>  Deleting file "D:\1.0_Starain\1.0_Work\4.8_VSO\1.1_Projects\2017\MVCCore20\ConsoleApp1\bin\Debug\netcoreapp2.0\ConsoleApp1.dll".
2>  Deleting file "D:\1.0_Starain\1.0_Work\4.8_VSO\1.1_Projects\2017\MVCCore20\ConsoleApp1\bin\Debug\netcoreapp2.0\ConsoleApp1.pdb".
2>  Deleting file "D:\1.0_Starain\1.0_Work\4.8_VSO\1.1_Projects\2017\MVCCore20\ConsoleApp1\obj\Debug\netcoreapp2.0\ConsoleApp1.csprojResolveAssemblyReference.cache".
2>  Deleting file "D:\1.0_Starain\1.0_Work\4.8_VSO\1.1_Projects\2017\MVCCore20\ConsoleApp1\obj\Debug\netcoreapp2.0\ConsoleApp1.csproj.CoreCompileInputs.cache".
2>  Deleting file "D:\1.0_Starain\1.0_Work\4.8_VSO\1.1_Projects\2017\MVCCore20\ConsoleApp1\obj\Debug\netcoreapp2.0\ConsoleApp1.AssemblyInfoInputs.cache".
2>  Deleting file "D:\1.0_Starain\1.0_Work\4.8_VSO\1.1_Projects\2017\MVCCore20\ConsoleApp1\obj\Debug\netcoreapp2.0\ConsoleApp1.AssemblyInfo.cs".
2>  Deleting file "D:\1.0_Starain\1.0_Work\4.8_VSO\1.1_Projects\2017\MVCCore20\ConsoleApp1\obj\Debug\netcoreapp2.0\ConsoleApp1.dll".
2>  Deleting file "D:\1.0_Starain\1.0_Work\4.8_VSO\1.1_Projects\2017\MVCCore20\ConsoleApp1\obj\Debug\netcoreapp2.0\ConsoleApp1.pdb".
2>Target GenerateTargetFrameworkMonikerAttribute:
2>  Skipping target "GenerateTargetFrameworkMonikerAttribute" because all output files are up-to-date with respect to the input files.
4>Target CoreClean:
4>  Deleting file "D:\1.0_Starain\1.0_Work\4.8_VSO\1.1_Projects\2017\MVCCore20\ConsoleApp3\bin\Debug\netcoreapp2.0\ConsoleApp3.deps.json".
2>Target CoreCompile:

Число 1, 2, 3, 4 означает процессы.

С другой стороны, это добавляет /m Параметр для команды MSBuild, если отметьте параметр " Построить параллельно" в задаче сборки VSTS, чтобы число процессов соответствовало количеству процессоров на компьютере. Если вы хотите использовать пользовательское значение, вам нужно отменить этот параметр и указать /m:X параметр в поле ввода аргументов MSBuild.

Другие вопросы по тегам