Разница между Subversion и MKS
Пожалуйста, дайте мне знать разницу между Subversion и MKS
3 ответа
Subversion: централизованная VCS, семантика слияния или блокировки, основанная на репозитории, с открытым исходным кодом, огромная доля на рынке (хотя она несколько теряет позиции для таких записей DVCS, как Mercurial и Git), бесплатный, превосходный набор инструментов и поддерживающая инфраструктура.
MKS: централизованная VCS, только блокировка семантики, на основе репозитория, закрытый источник, относительно ограниченная доля на рынке, не бесплатная ($999+/ лицензия), значительно менее развитый набор инструментов.
Если вам нужен Forrester, чтобы сказать вам, что такое лучший SCM, то у вас уже есть проблемы. Любой идиотский "аналитик" может составить фантастический отчет об удивительных функциях управления, которые предоставляет MKS, но спросить разработчика, который того стоит, который когда-либо использовал MKS, никогда не порекомендует.
МКС удалось полностью запустить интеграцию Eclipse/WSAD (SVN/CVS интегрируется без нареканий).
MKS - самая большая куча дерьма, которую я когда-либо использовал для SCM (и это говорит о многом, так как я также использовал Microsoft Visual Source Safe на ранних этапах).
Да, Subversion не "бесплатна" для поддержки, но любой может ее настроить, и любой системный администратор с половиной мозга может администрировать ее и делать соответствующие резервные копии.
Это зависит только от вас. Если вы хотите порадовать руководство и выбрать "правильный" выбор, который ставит все галочки, выбирайте MKS. Если вы хотите, чтобы ваши разработчики действительно выполнили какую-то работу, то используйте SVN до конца.
Но, поскольку мне пришлось использовать MKS, я добавлю более ранний постер на CruiseControl for CI, который работает, но он немного устарел.
Как упоминал Дойл, самое большое различие между MKS и SVN заключается в том, что SVN - это специализированная система контроля версий, тогда как MKS - это целый набор приложений, охватывающих весь жизненный цикл, от управления требованиями и отслеживания ошибок до управления тестированием. И, кстати, он также включает в себя контроль версий.
Некоторые конкретные проблемы, которые у меня были с этим, перечислены ниже. Пожалуйста, имейте в виду, что это было на период 2008 года, поэтому я не знаю, будет ли это все еще верно в новых версиях:
- Медленный (применяется в основном для крупных проектов; для небольших не так уж и плохо)
- Проблемы с поиском сторонних инструментов для интеграции с ним
- Инструменты, которые претендовали на интеграцию с ним, имели нестабильные интеграции (в частности, Visual Studio и Code Collaborator)
- Стратегия ветвления была запутанной; получил много пустых взглядов, пытаясь объяснить пути разработки и общие подпроекты
- Слияние ветвей было неловким и хлопотным
- Отслеживателю ошибок не хватает некоторой гибкости рабочего процесса по сравнению с другими инструментами ошибок
- Инструменты администратора были менее чем отполированы
Я не ненавидел это, но и не могу рекомендовать это.