Построить на коммит с Subversion - PullRequest
4 голосов
/ 01 февраля 2009

Простой вопрос. Я использую Visual Studio, и я только что установил Subversion, как я могу заставить проект быть собранным с помощью msbuild, и если он успешно компилируется, остальное предупреждает пользователя. Я бы использовал TortoiseSVN, VisualSVN или AnkhSVN (как бы это ни называлось), если бы у них была возможность принудительно строить на встроенном коммите (я знаю, что это не их использование, я знаю, что они просто используются как GUI для фиксации в SVN) Я хотел бы знать, может ли какой-либо из этих инструментов быть использован для этой дополнительной вещи.

Подводя итог, я просто ищу безболезненный способ сборки перед фиксацией для подрывной деятельности.

Ответы [ 6 ]

6 голосов
/ 01 февраля 2009

Взгляните на "предварительно протестированный коммит" TeamCity "a.k.a" отложенный коммит "a.k.a" частная сборка ".

Короче говоря, вы «фиксируете» TeamCity, TeamCity проверяет вашу сборку и фиксирует ее в реальном хранилище, только если сборка прошла. Если нет, тебе так сказали. Преимущество здесь в том, что ваш ствол никогда не сломан. Вы можете пойти сюда, чтобы узнать больше об этом https://confluence.jetbrains.com/display/TCDL/Pre-Tested+(Delayed)+Commit

4 голосов
/ 01 февраля 2009

Вы также можете использовать CruiseControl, Hudson или другой инструмент непрерывной интеграции.

Они могут работать в фоновом режиме, следить за изменениями, а затем строить.

4 голосов
/ 01 февраля 2009

TortoiseSVN имеет клиентских скриптов хуков , которые вы можете использовать. Например, вы можете написать скрипт, который выполняет сборку и возвращает true только в случае успешной сборки. Затем добавьте этот скрипт в качестве ловушки перед фиксацией.

2 голосов
/ 15 апреля 2009

Ну, вы также можете обучить своих сотрудников , если не хотите платить за специальные инструменты ...

2 голосов
/ 01 февраля 2009

Метод, предложенный Стефаном, кажется вам наиболее подходящим.

Однако альтернативой, в зависимости от того, что вы пытаетесь получить, может быть запуск с какой-либо автоматической непрерывной интеграцией, поэтому каждый раз, когда будет сделан коммит, будет выполняться сборка / тестирование, а затем, если возникнут проблемы, это может вызвать предупреждение или что угодно. Поскольку вы используете visual studio, вы предполагаете, что используете .NET, поэтому CruiseControl может стоить посмотреть.

1 голос
/ 15 апреля 2009

Я думаю , это может работать для вас, поскольку вы используете SVN.

Все, что вы просите, похоже на то, что предложил Мауш, CI-сервер. В этом случае TeamCity отвечает всем требованиям.

Но, возможно, вам не нужны были все прибамбасы с CI-сервером. Тогда SIN может работать на вас. Проверьте это из , если у вас есть время!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...