Я помогаю настроить SCM для новой программы, и в настоящее время мы находимся в процессе выбора VCS.
Основными претендентами на данный момент являются SVN, ClearCase, SVN + DVCS и просто DVCS.
В данный момент команда склоняется к SVN или SVN + DVCS. Мы хотим избежать затрат и затрат на администрирование ClearCase, но хотим, чтобы рабочий процесс и варианты управления версиями предлагались. Я также предложил вариант использования DVCS, и эта идея рассматривается.
Для DVCS мы рассматриваем Mercurial, Bazaar и Git. Команда чувствует себя комфортно с SVN, но не думаю, что она предложит необходимую универсальность, поэтому мы смотрим на DVCS поверх опции SVN.
Есть ли у кого-нибудь какие-либо советы (например, о существующих инструментах, процессах) для запуска такой установки?
Проблемы включают в себя:
- Простота настройки
- Настройка рабочих процессов (разработка <-> обзоров кода -> тест -> ствол, затем ствол -> ветка интеграционного теста -> выпуск с исправлениями ошибок, внесенными в ветви релиза), аудит (обнаружена ошибка, когда она была введена) )
- Генерация метрик
- Разумная кривая обучения для разработчиков, привыкших к ClearCase.
- Разработка Windows
- Интеграция с трекером ошибок (вероятно, это будет Redmine, хотя он не задуман)