Вопрос

В настоящее время я изучаю новые варианты управления версиями для команды из 10 разработчиков.Мы занимаемся разработкой .net в Visual Studio 2008.В настоящее время мы используем VSS для управления версиями.

Мы ищем централизованное решение для управления версиями (не распространяемое) с хорошим плагином Visual Studio.Мой менеджер порекомендовал Plastic SCM, и я всегда слышал много хорошего о Subversion.Я пытаюсь решить, следует ли нам использовать Subversion или Plastic SCM.

Существует не так много информации о Plastic SCM (кроме того, что они написали), и мне было интересно, будет ли это хорошим решением.В их устах это звучит так, как будто ветвление намного проще.

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

Каковы плюсы и минусы этих инструментов?

Также есть ли какие-либо другие инструменты, которые вы могли бы предложить?

Спасибо

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

Решение

Я раньше не использовал Plastic SCM, но Subversion очень хорошо работала у меня в прошлом.Если вы не привязаны к бесплатному решению, такому как SVN, вы могли бы рассмотреть Team Foundation Server.Помимо контроля версий, TFS предлагает дополнительные приятные функции, такие как отслеживание рабочих элементов, интегрированная отчетность...Как вы можете себе представить, интеграция с Visual Studio просто великолепна :)

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

Я хотел бы добавить этот ответ для всех, кому еще предстоит сделать свой выбор.

Я разрабатываю на C # с VS2008.Я работаю в команде из двух разработчиков.Раньше у нас не было контроля версий (ужас), затем мы использовали Subversion (okish), а затем перешли на Plastic SCM (good).

Моя Матрица сравнения:
(пожалуйста, обратите внимание на мою точку зрения пользователя Windows, YMMV)

Профессиональный Пластик:

  • Приложение для Windows - Приятный и интуитивно понятный пользовательский интерфейс
  • Хорошие обучающие видеоролики (вы можете узнать все, что вам нужно, примерно за два часа)
  • Все стандартные задачи очень просты в выполнении:переключение на другую ветку, получение более старой версии какого-то файла, различия, слияния.

Противопластиковый:

  • Стоит денег (бесплатно для с открытым исходным кодом; Редактировать (2/2011): раньше существовали бесплатные коммерческие лицензии на 2 пользователя Существует бесплатная коммерческая лицензия на 15 пользователей.Однако вам нужно обновлять его каждый год.)
  • Нет реальной серверной / административной программы:Я понятия не имею, где именно на моем диске хранятся данные;все это скрыто от меня.Теперь, как мне создать резервную копию моего репозитория?Единственное “решение”, о котором я знаю, - это использовать функцию репликации клиента и реплицировать репозиторий на ваш сервер localhost.(Я этого еще не сделал.) [ПРАВИТЬ:Взгляните на комментарии, чтобы найти реальное решение.]

Профессиональная Подрывная деятельность:

  • Бесплатно
  • Открытый исходный код
  • Огромная база пользователей

Контрподрыв:

  • Subversion на самом деле не может обрабатывать переименования файлов.Вы можете обойти это, но это (пока) не является встроенной функцией.
  • Такие вещи, как перемещение каталога, могут повредить вашу рабочую копию.
  • Tortoise SVN - это немного больше, чем фасад для командной строки svn.exe.Для многих операций вам все еще необходимо знать команды командной строки и их переключатели.
  • Tortoise SVN сильно замедлил мои щелчки правой кнопкой мыши в проводнике Windows.
  • Слияние занимает больше времени, когда возникают конфликты.Вы получаете несколько копий одного и того же файла, а затем вам приходится удалять все ненужные версии (для этого оставьте Visual Studio), или в ваш код вводятся индикаторы конфликтов, которые делают ваш код некомпилируемым, пока вы не удалите их все.С другой стороны, в Plastic SCM операция слияния открывает окно, похожее на WinMerge, и вы можете просто щелкнуть по блокам кода, необходимым для разрешения конфликта.

Надеюсь, это поможет.Если вам нужна какая-либо другая конкретная информация, пожалуйста, дайте мне знать.

Феликс

Использование VisualSVNServer - это простой способ запустить Subversion в среде Windows, и у них есть инструмент, который предлагает интеграцию с Visual Studio примерно за 50 долларов за разработку.Когда я работал в компании в процессе перехода, выбор был между SVN и Perforce.В итоге мы перешли на SVN, потому что я смог получить его, использовать, тестировать и играть с ним очень легко.Мы могли волей-неволей получать презентации WebEx, но было трудно учиться, не покупая их книгу.Также я утверждал, что это лучший инструмент для разработчиков, потому что на нем было так много проектов с открытым исходным кодом, и это был более передаваемый навык.Пластиковый SCM вряд ли будет использоваться, если вы перейдете на другую должность.

Взгляните на Производительность вот.Он сравнивает обе системы при действительно большой нагрузке (1, 10, 20, 50 и, наконец, 100 одновременных машин на одном сервере, что наверняка намного больше, чем 100 реальных пользователей).

Заранее прошу прощения за мое предложение, но вы можете централизованно использовать распределенную систему контроля версий.Это просто вопрос политики внутри вашей команды разработчиков.

Например, Mercurial очень легко позволяет выполнять операции вытягивания и выталкивания через веб-сервис через TortoiseHg.

Или, может быть, вы можете попробовать смешанное решение, централизованный сервер (subversion) и локальное ветвление для каждого разработчика с использованием git, что, я должен сказать, очень просто.

Для Подрывной деятельности <-> VStudio, я использовал Ankh, и я нахожу его очень простым в использовании.Для Git <-> VStudio, я использовал GitExtensions, и интеграция не так хороша, как можно найти, например, с расширением Tortoise Shell или с Ankh, но вы можете попробовать это сами.

Я использовал GIT, SVN и Plastic (версия до SCM 4), затем SVN, а теперь вернулся к Plastic SCM 4.Plastic не только быстрее в регистрации / оформлении заказа / обновлении и т.д., чем другие, которые я использовал, но и имеет приятный пользовательский интерфейс, а также интуитивно понятную (для меня) навигацию и функции.Я всегда сталкивался с поврежденными рабочими копиями с помощью SVN, когда менял ветки и т.д.Пластик просто подходит мне.

Другой альтернативой для VSS является Хранилище исходного кода ("vss сделано правильно").Большим плюсом является то, что это работает (в отличие от VSS).

PlasticSCM, по-видимому, является распределенным решением, в то время как svn (и VSS, TFS, ...) централизованы.Если вам нужны альтернативы коммерческим распределенным решениям, вы можете ознакомиться с мерзавец, переменчивый, базар.

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

Я недавно приступил к новой работе, и в этом офисе мы используем пластик.Это было мое первое знакомство с этим продуктом.Я настолько очарован Plastic, что на своем собственном сервере отказался от SVN и перешел на Plastic.Это просто настолько хорошо.Меня нелегко будет убедить вернуться к SVN.Пластик идеален.Это бесплатно для 15 разработчиков.Он может быть интегрирован с SQL server, чтобы вы всегда точно знали, где находится ваш репозиторий.Его можно подключить для использования аутентификации в рекламе.Что мне больше всего нравится в Пластике, так это проводник ветвей.У него есть графический интерфейс, который показывает все ветви вашего текущего проекта.В этом проводнике ветвей вы можете создавать дочерние ветви из своей основной ветви или объединять дочерние ветви обратно в свою основную ветвь.Это было хорошо продумано.

Пластик, ИМХО, - это сбывшаяся мечта.Пабло знает свое дело!

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