Выберите эффективный контроль версий - PullRequest
1 голос
/ 21 октября 2010

Мы - компания, работающая над небольшим и каким-то огромным проектом.Иногда в одном проекте больше разработчиков 5, 10, 20 и т. Д.

Мы ищем эффективную систему контроля версий с лучшими дополнительными свойствами:

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

Масштабируемость - поддержка 5, 10, 25 разработчиков, 10, 50, 200 проектов

Объединение ветвей

Пересмотр и маркировка изменений кода

Статистика и отчет для разработчиков, руководителей, поставщиков, разработчиков лидеров, клиентов и т. Д.

Поддержка развития различных технологий - .NET, JAVA, PHP, Oracle, Delhpi, ABAP / SAP.

На данный момент мы выбираем между SVN, VSS, Rational rose, ClearCase and JIRA.Поддерживает ли некоторые из этих решений отслеживание ошибок и репозиторий базы знаний?

Может быть, у кого-то есть опыт по этой теме и могут быть предложения.

Заранее спасибо.

С уважением.

Ответы [ 5 ]

2 голосов
/ 21 октября 2010

Я работал над SVN, VSS и clearcase в различных компаниях, с которыми работал. Я всегда чувствовал, что SVN - лучший среди них. Однако в эти дни есть несколько лучших распределенных инструментов контроля версий (таких как mercurial, git, bazaar), которые вы, возможно, захотите рассмотреть.

Вот мои взгляды в основном на SVN / clearcase:

Проблемы с производительностью SVN: Я видел, что Subversion может обрабатывать файлы размером до 2 ГБ. Сложная структура каталогов не имеет значения для Subversion, как это Clearcase: я видел проблемы с производительностью / сетью в clearcase при обработке огромных файлов / репозиториев. В моем случае это было монтирование NFS в моей системе Windows, и это делало вещи ужасно медленными при выполнении сборок.

Масштабируемость Оба SVN и clearase имеют хорошие возможности масштабирования. Однако у svn есть довольно хорошее сообщество и поддержка через Интернет, которой не хватает для прозрачного. Тем не менее, в случае использования clearcase у вас будет платная поддержка и быстрое решение проблем с масштабируемостью.

Слияние ветвей Clearcase - явный победитель в этом случае. Clearcase на некоторое время обладает довольно хорошими возможностями слияния. SVN все еще совершенствуется в этом направлении, но в недавнем прошлом был внесен большой вклад в функцию svn merge.

Пересмотр и маркировка изменений кода ИМО, это почти то же самое между clearase и svn. Но соглашения немного отличаются.

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

Поддержка развития различных технологий Я работал над большинством технологий, описанных выше, но я считаю, что оба инструмента имеют достойную поддержку для всех возможных сред (таких как Visual Studio, eclipse и т. Д.)

Кстати, рациональная роза - это инструмент UML, не связанный с управлением версиями. JIRA - это инструмент отслеживания ошибок, он хорошо интегрируется с SVN. Я бы порекомендовал вам посмотреть на trac для интеграции с SVN.

Надеюсь, что выше помогает

1 голос
/ 21 октября 2010

У нас очень хороший опыт работы с SVN.Он хорошо контролирует кодовую базу, и легко увидеть, что произошло с файлами.
Он также имеет хорошее взаимодействие с Visual Studio через сторонние плагины.Мы используем VisualSVN, который не бесплатный, но очень хороший.

VSS не хорошо.Это очень легко испортить вещи.

ClearCase довольно хорош, но лицензии очень дороги.Как правило, он имеет очень строгий контроль над базой кода, но если что-то пойдет не так, это очень трудно исправить.

1 голос
/ 21 октября 2010

Как бы то ни было, не используйте VSS. Никогда.

Насколько я знаю, Jira - это не система контроля версий, а система отслеживания ошибок / проблем (и очень хорошая).

Как сказано в других ответах, SVN - очень хорошее решение, которое используется многими успешными проектами. Более новые распределенные решения включают Git, Mercurial (Hg), Bzr, ... но я бы не стал использовать распределенную систему контроля версий в нераспределенной команде. Существует реальная начальная стоимость для DVCS.

И я уже сказал: не используйте VSS, без каких-либо обстоятельств.

0 голосов
/ 30 октября 2010
  • Clearcase хорош, только если вы знаете, как его использовать, и он очень дорогой
  • TFS не работает хорошо.Это медленно, как ад.
  • SVN не делает хорошие ветвления.В качестве примечания, все основные проекты OSS отказались от него уже в сторону Git или Mercurial
  • Избегайте VSS как черт
  • Я бы определенно пошел на Jira + Plastic SCM
  • Hg и Git - ОТЛИЧНЫЕ опции, но большую часть времени вам нужно быть любителем команд
0 голосов
/ 21 октября 2010

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

Если вам все еще нужен один локализованный репозиторий, я бы порекомендовал SVN. Он прост в использовании и имеет хорошее взаимодействие с Visual Studio с помощью сторонних инструментов.

Если вам нужно полностью интегрированное решение для технологии Microsoft (отслеживание ошибок, контроль исходного кода, непрерывная интеграция и т. Д.), Я рекомендую использовать TFS.

Проверьте mercurial / GIT для контроля над источником distrubutes, если вы планируете много разветвлений / слияний.

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