Круиз-контроль
-
06-07-2019 - |
Вопрос
У сборочной машины на работе много проектов, но у нас проблема только с одним. Р>
Два проекта очень похожи, один в режиме отладки, другой в режиме выпуска. Они оба очищают каталог проектов, а затем делают полное получение из исходного кода безопасным. Отладочная сборка получает исходный текст нормально и довольно быстро, но сборке выпуска требуется много времени, чтобы получить исходный код (она долго приостанавливается в части CheckingModification, тогда как сборка отладки не приостанавливается почти так же долго). Блоки sourcecontrol идентичны (включены из одного файла) и имеют следующий вид:
<sourcecontrol type="vss" autoGetSource="true" applyLabel="false">
<executable>C:\Program Files\Microsoft Visual Studio\VSS\win32\SS.EXE</executable>
<project>$/Projects</project>
<username>####</username>
<password>####</password>
<ssdir>\\####\SourceCode\VSS</ssdir>
<workingDirectory>D:\Projects\</workingDirectory>
<culture>en-GB</culture>
<cleanCopy>True</cleanCopy>
</sourcecontrol>
У кого-нибудь есть идеи о том, почему в выпуске сборки блок управления версиями работает медленнее?
Решение
В итоге мы перешли с SourceSafe на SourceGear Vault (в основном для функций ветвления, но скорость и надежность также были важными факторами).
Мы также перенесли нашу сборочную машину со старого компьютера на сервер, который имеет соединение 1 Гбит / с с исходным сервером, а не 100 Мбит / с, что значительно помогло.
В конце концов, когда я устанавливал и тестировал Vault на той же машине (ну, клон), что и старая сборочная машина, он сокращал операцию получения исходного кода примерно с 10 минут до 5. Как только он был установлен в сборке Время получения источника сервера теперь составляет около 1 минуты.
Мой совет любому - просто переключиться с SourceSafe на что-нибудь еще ... вы не пожалеете об этом.
Другие советы
Работают ли сборки Debug и Release одновременно? Если это так, я мог видеть, что один ждет другого, чтобы закончить.