subversion / круиз-контроль / nant / nunit с проектами и решениями Visual Studio

StackOverflow https://stackoverflow.com/questions/606480

  •  03-07-2019
  •  | 
  •  

Вопрос

Я работаю в команде из 2 разработчиков, и в настоящее время мы используем VSS, у нас нет непрерывной интеграции, ежедневной сборки и нескольких модульных тестов.

Я хочу сменить нашу систему управления версиями на Subversion и в то же время наладить более профессиональный процесс.

Subversion / круиз-контроль / nant / nunit кажется довольно популярной комбинацией из того, что я видел до сих пор, и я только что установил их на запасной компьютер.

Я скачал руководство по subversion, и оно состоит из 400 страниц только для одного из инструментов!

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

Кто-нибудь знает о какой-либо книге / учебнике / пошаговом руководстве, которое охватывает только самое необходимое, чтобы как можно скорее запустить меня с помощью этой конкретной комбинации инструментов?

Это было полезно?

Решение

Я использую subversion уже довольно много лет, и я должен сказать, что лучшее введение, которое я нашел, включено в файл справки для TortoiseSVN.TortoiseSVN - это еще один бесплатный клиент для Windows с интеграцией Explorer.Я настоятельно рекомендую сначала прочитать справку по Tortoise, даже до выхода оригинальной документации subversion.При необходимости он отсылает вас к официальным документам.

Черепаха также является моим любимым клиентом.Фактически, на большинстве машин это единственный компонент subversion, который мне нужен.Он выполняет все функции, которые я использую регулярно, включая создание репозитория.Хотя это не мешает обычным инструментам командной строки, и в большинстве случаев я также устанавливаю их, я нахожу инструменты cli, необходимые для автоматизации, только в скриптах и (нечастых) функциях обслуживания репозитория.

Я нахожусь в процессе перестройки нашей собственной среды сборки на работе, поэтому я просматриваю варианты для множества инструментов сборки / разработки.Вот инструменты, которые я могу порекомендовать или прийти с хорошими рекомендациями от других:

ВинМердж:настоятельно рекомендуемый бесплатный инструмент diff, устанавливайте после TortoiseSVN для наилучшей интеграции.Я использую этот инструмент ежедневно для многих целей, некоторые из которых выходят за рамки разработки.

Командный город:Сервер CI, который, кажется, хорошо отшлифован.Я еще не пробовал этот, но он является ведущим претендентом на победу CC.NET учитывая мой опыт работы с CC.NET (год) и хорошие отзывы, которые он получает.Хадсон - еще один хорошо зарекомендовавший себя вариант.

Сервер VisualSVN:рекомендуемый бесплатный http (s) сервер для SVN, который поддерживает интеграцию AD для получения разрешений и консоль msc в стиле Microsoft.Я только что закончил внедрять это на работе, и это очень просто.Это необходимо, если вы хотите удаленную регистрацию заезда / отъезда (IP), ssl-шифрование, скрипты подключения к репозиторию и другие серверные функции.

VisualSVN:хорошо зарекомендовавший себя плагин Visual Studio для SVN.Я еще не пробовал эту модель, но она считается простой покупкой.[Править:согласно тому, что я прочитал здесь о overflow, AnkhSVN - это бесплатный вариант, который работает примерно так же.]

SVN-Монитор:рекомендуемое бесплатное программное обеспечение для мониторинга, которое предупреждает вас об изменениях в репозитории.Настраивается относительно того, что он отслеживает и какие действия он предпринимает.Зависит от того, установлен ли TortoiseSVN.

BugTracker.NET:рекомендуемый бесплатный сервер отслеживания проблем.Включает интеграцию с SVN для привязки отслеживаемых проблем к версиям subversion.Не уверен, есть ли в TeamCity аналогичная функция, но мы уже используем ее вне разработки для отслеживания проблем со службой поддержки, и она отлично подходит для бесплатного пакета.

У меня нет опыта работы с модульным тестированием, покрытием, инструментами документации для .NET, поэтому я не могу там комментировать.

Однако я питонист, поэтому я добавлю одну вещь, которую Python может быть полезен для wrt SVN, а именно то, что вы можете использовать библиотеку PySVN для выполнения любой автоматизированной работы с репозиторием, которая слишком сложна для написания сценариев с помощью инструментов командной строки.Я использую его для создания тегов, как только сборка готова к тегированию и развертыванию.

Выберите некоторые из этих инструментов, и вы будете впереди всех.Разрабатывать процессы вокруг них и обучать персонал - что ж, это по-прежнему ваша работа.:)

Другие советы

Я записал видеозапись иллюстрирующий все основы, включая настройку SubVersion, CruiseControl.NET .Я даже иллюстрирую сломанную сборку.Используемым инструментом разработки был Delphi, но его легко можно было использовать VS.NET.

Если вы хотите запустить сервер Subversion как можно скорее, не имея необходимости много знать о репозитории, ознакомьтесь с Visual SVN здесь.Это приложение с графическим интерфейсом, которое позволяет вам настраивать репозитории без необходимости читать много документации.Об этом также есть небольшая информация здесь.

Что касается интеграции с CC.NET, посмотрите CC.NET документацию по блоку управления subversion здесь, они довольно хорошо разбили это на своем сайте, и вы должны быть в состоянии довольно легко найти xml-теги для svn.

Вам также следует ознакомиться с внедрением клиентских инструментов, таких как Черепаха SVN и Анкх SVN.

Для получения дополнительной информации ознакомьтесь с этими димекастами здесь.Отличные учебные пособия о том, как эффективно использовать nant.

Поскольку вы работаете в VSS, взгляните на Хранилище Исходного кода и Источникгеровая Крепость.Если они будут делать то, что вы хотите, их будет быстрее освоить, поскольку они предназначены для людей с VSS-менталитетом.

Я думаю, что они могут быть даже бесплатными для небольших команд.

(Вы по-прежнему захотите использовать NUnit для тестирования, однако я бы сначала разобрался с управлением исходным кодом и непрерывной интеграцией.)

Если вы все-таки перейдете на Subversion, вы обнаружите, что она очень стабильна и более чем способна удовлетворить потребности большинства команд.Взгляните на TortoiseSVN для удобного пользовательского интерфейса поверх Subversion

Вероятно, это не поможет в решении рассматриваемого вопроса, но...

Я не говорю, что его нет ... но даже если бы у вас было это руководство, вам пришлось бы многому научиться.Вам действительно нужно изучить каждую из частей по отдельности, прежде чем думать о том, чтобы собрать их все вместе.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top