Какой источник контроля мы должны использовать - PullRequest
6 голосов
/ 06 мая 2009

Я ищу хорошее решение для контроля версий. Вот требования:

  1. Должен иметь графический интерфейс или доступный плагин графического интерфейса.
  2. Должен быть бесплатным.
  3. Должен работать с HTTP.

Какой источник контроля вы бы выбрали?

ФОН

Наша команда разработчиков .Net является частью большой материнской компании. Мы находимся в процессе приобретения VS Team System, однако бюрократия крупной компании движется медленно, и могут пройти месяцы, прежде чем мы сможем запустить сервер Team System. Между тем, у нас есть большой проект, который будет передан стороннему поставщику в Индии. В прошлом процесс нашей команды был примерно таким: 1) указать требования, 2) позволить индийской команде создать решение и 3) получить решение от поставщика через месяц.

Мы ищем более дисциплинированный подход, и Team System является нашим долгосрочным решением, однако я бы хотел использовать что-то прямо сейчас, а не ничего.

Вот некоторые из моих мыслей:

  1. Source Safe не разрешается из-за проблем со стабильностью.
  2. Простота использования важнее, чем расширенные функции, такие как ветвление, и я бы очень хотел, чтобы он использовал графический интерфейс вместо командных строк.
  3. HTTP-доступ является обязательным, потому что команда разработчиков будет удаленной.

Дополнительная информация в качестве продолжения обратной связи до настоящего времени

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

Final

К сожалению, мы не использовали ни одну из рекомендаций. Мы наконец-то получили лицензию TFS, однако у нас не будет разрешения на использование сервера до следующего года. Тем временем оффшорная команда загружает zip-файлы на ftp-сервер. Ugggghh! Почему так сложно убедить крупные компании в том, что можно использовать нестандартные решения (такие как GIT), а не ждать месяцы (или годы), поскольку они не могут решить, стоит ли покупать (в данном случае TFS) стоит.

Ответы [ 18 ]

25 голосов
/ 06 мая 2009

Я рекомендую Subversion и TortoiseSVN . Даже документация для Subversion бесплатна.

Отредактировано, чтобы добавить: Я также настоятельно рекомендую VisualSVN Server для настройки вашего SVN-репозитория. Установка была несложной, и она была настолько беспроблемной, что мне пришлось посмотреть, как она называется, потому что мне не приходилось трогать ее один раз с момента первоначальной настройки.

10 голосов
/ 06 мая 2009

Представьте себе распределенную систему: даркс , мерзавец или ртутный . У всех есть свои приверженцы, но с точки зрения работы они очень похожи. Сборка darcs может занять много времени, потому что он написан на Haskell, и вам в конечном итоге понадобится сначала собрать Haskell. Mercurial основан на Python, его легко взломать и расширить. И, конечно, git - это то, что используется для Linux, очень широко доступно, много инструментов.

Subversion , я думаю, в значительной степени является основой современного SCM; это был бы хороший выбор, но он заставляет вас иметь фиксированный центральный сервер; либо вам, либо вашим индийским коллегам придется проверить и совершить длинную трубку.

4 голосов
/ 06 мая 2009

Subversion (SVN), очевидно, является популярным выбором. Это также довольно часто используется сейчас (Google Code, Sourceforge и т. Д.), Поэтому там должно быть много документации о его использовании. Git также является хорошим выбором, но отсутствие доступных интерфейсов GUI делает его не совсем подходящим для ваших требований.

Я предполагаю, что поскольку вы используете .NET, вы разрабатываете преимущественно в среде Windows. Проверьте продукты VisualSVN. Они делают отличный (БЕСПЛАТНЫЙ) серверный продукт для фактического запуска полноценного сервера SVN в среде Windows (он поддерживает SSL, групповую / пользовательскую аутентификацию, включая поддержку Active Directory).

Они также предлагают плагин для Visual Studio, хотя он и не бесплатный (хотя и вполне разумный по цене 49 долл. / Разработчик). AnkhSvn - это еще одна опция клиентского плагина Visual Studio. Это не так здорово, но это бесплатно.

http://www.visualsvn.com/server/ - бесплатный Windows SVN Server

http://www.visualsvn.com/visualsvn/ - Плагин клиента Visual Studio

http://ankhsvn.open.collab.net/ - бесплатный плагин для клиента Visual Studio

Итак, я думаю, что Subversion, использующий продукты VisualSVN, даст вам лучшую интеграцию Windows / GUI по очень разумной цене.

2 голосов
/ 06 мая 2009

По моему опыту SVN очень плохо сосет HTTP. Вы захотите вырвать свои волосы, если ваш репо имеет какой-либо значительный размер, особенно с трансатлантической туда-обратно, набитой там. Лично я бы пошел с Mercurial.

Google недавно провел исследование Git и Mercurial. Наибольшим преимуществом Mercurial было то, что он очень хорошо играл с HTTP.

TortoiseHg, хотя и не такой зрелый, как TortoiseSVN, представляет собой довольно солидный графический интерфейс Windows. Хотя вы упомянули, что не очень заинтересованы в ветвлении и слиянии, это обычные действия во всех DVCS. К счастью, потому что они распространены, они хорошо поддерживаются в пользовательском интерфейсе и в целом относительно безболезненны.

1 голос
/ 06 мая 2009

Моя рекомендация: Subversion + TortoiseSVN (для интеграции с Explorer) + AnkhSVN (интеграция с Visual Studio).

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

1 голос
/ 06 мая 2009

Проверьте Subversion: http://subversion.tigris.org/

Имеет также плагин GUI VS .NET. http://tortoisesvn.tigris.org/ http://ankhsvn.open.collab.net/

Все с открытым исходным кодом и бесплатно.

1 голос
/ 06 мая 2009

Team Foundation Server довольно прост в использовании и его легко начать с исходных кодов (используется общая терминология для команд). Однако, поскольку часть разработки находится в Индии, они могут быть более осведомлены о Subversion.

Если вы используете Subversion, я бы посмотрел на VisualSVN . Это фантастически, просто в использовании и быстро в настройке (TFS немного сложен в настройке). VisualSVN предлагает подключаемый модуль IDE ($ 50) и серверный аналог, который загружает Subversion для машин Windows (бесплатно)

1 голос
/ 06 мая 2009

Как уже упоминалось, SVN и черепаха - это путь.

Я бы также получил лицензию на визуальный SVN (http://www.visualsvn.com/), он не бесплатный, но действительно хороший, он использует Tortoise svn и предоставляет вам свои функции в IDE.

1 голос
/ 06 мая 2009

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

1 голос
/ 06 мая 2009

Mercurial великолепен и действительно прост.

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