Построить на коммит с Subversion
Простой вопрос Я использую Visual Studio, и я только что установил Subversion, как я могу заставить проект быть собранным с помощью msbuild, и если он успешно собран, остальное предупреждает пользователя. Я бы использовал TortoiseSVN, VisualSVN или AnkhSVN (как бы это ни называлось), если бы у них была возможность принудительно строить на встроенном коммите (я знаю, что это не их использование, я знаю, что они просто используются как GUI для фиксации в SVN) Я хотел бы знать, может ли какой-либо из этих инструментов быть использован для этой дополнительной вещи.
Подводя итог, я просто ищу безболезненный способ сборки, прежде чем совершать подрывную деятельность.
6 ответов
Взгляните на отложенную фиксацию TeamCity "aka", известную как отложенная фиксация.
Короче говоря, вы "фиксируете" TeamCity, TeamCity проверяет вашу сборку и фиксирует ее в реальном хранилище, только если сборка прошла. Если нет, тебе так сказали. Преимущество здесь в том, что ваш багажник никогда не сломан. Вы можете пойти сюда, чтобы узнать больше об этом https://confluence.jetbrains.com/display/TCDL/Pre-Tested+(Delayed)+Commit
Вы также можете использовать CruiseControl, Hudson или другой инструмент непрерывной интеграции.
Они могут работать в фоновом режиме, следить за изменениями, а затем строить.
TortoiseSVN имеет клиентские скрипты хуков, которые вы можете использовать. Например, вы можете написать скрипт, который выполняет сборку и возвращает true только в случае успешной сборки. Затем добавьте этот скрипт в качестве ловушки перед фиксацией.
Метод, предложенный Стефаном, кажется, может быть лучшим для вас.
Однако альтернативой, в зависимости от того, что вы пытаетесь получить, может быть запуск с какой-либо автоматической непрерывной интеграцией, поэтому каждый раз, когда будет сделан коммит, будет выполняться сборка / тестирование, а затем, если возникнут проблемы, это может вызвать предупреждение или что-то еще. Поскольку вы используете visual studio, вы предполагаете, что вы используете.NET, поэтому CruiseControl может стоить посмотреть.
Ну, вы также можете обучать своих сотрудников, если вы не готовы платить за специальные инструменты...
Я думаю, что это может работать для вас, так как вы используете SVN.
Все, что вы просите, похоже на то, что предложил Мауш, CI-сервер. В этом случае TeamCity отвечает всем требованиям.
Но, возможно, вам не нужны были все прибамбасы с CI-сервером. Тогда SIN может работать на вас. Проверьте это , если у вас есть время!