Контроль исходного кода в Visual Studio 2010? - PullRequest
45 голосов
/ 14 июля 2010

После поиска на форумах SO, Google и MSDN я разочаровался, что так мало информации о том, что может показаться очевидным вопросом и, возможно, глупым вопросом.

Мне нужно использовать систему контроля версий в Visual Studio 2010 Professional. У меня нет отдельного Team Foundation Server 2010. Некоторые люди упоминали SourceSafe? Честно говоря, я не видел ни одного SourceSafe в Visual Studio 2010.

Какие есть альтернативы (желательно бесплатные) для управления исходным кодом в Visual Studio 2010? Или это уже интегрировано в Visual Studio 2010, что я настолько слеп, что пропустил это?

Обновление № 1: Спасибо всем, я пойду с SVN, в частности AnkhSVN для Visual Studio 2010.

Обновление 3/23/2011 : Прошел почти год с тех пор, как я задал этот вопрос. Я настоятельно рекомендую использовать Mercurial или Git поверх Subversion. Так что для тех из вас, кто ищет систему контроля версий Visual Studio 2010, не ищите ничего, кроме расширений Git или Mercurial из библиотеки расширений Visual Studio.

Обновление 5/16/2013 : я бы настоятельно рекомендовал вам использовать Git сверх Mercurial , TFS или SVN . Взгляните на CodeSchool Попробуйте GitHub в браузере, чтобы увидеть, как это круто!

  • Начало работы с Git в Visual Studio 2012 - подробное руководство от Энди Льюиса .

  • Инструменты Visual Studio для Git - Расширение для Team Explorer, обеспечивающее интеграцию управления исходным кодом для Git. Обеспечивает интеграцию с локальными репозиториями Git и предоставляет инструменты для работы с удаленными репозиториями.

enter image description here

Ответы [ 5 ]

17 голосов
/ 14 июля 2010

См .: Список систем контроля версий с плагинами Visual Studio


Visual Studio - это просто IDE. Вы можете использовать любое решение по управлению исходным кодом, которое вы хотите с ним. В частности, любое решение по управлению исходным кодом с открытым исходным кодом, например, git, mercurial (hg) или subversion (svn). И есть коммерческие продукты, такие как Perforce или SourceGear Vault. Смотрите здесь для довольно исчерпывающего списка и Google для получения дополнительной информации.

Вы можете найти плагины Visual Studio, которые интегрируют его с любым источником контроля. Из открытых источников Subversion особенно богата в этом отношении. Коммерческие обычно идут с такой интеграцией.

И если вы не используете систему контроля версий, которая требует явного извлечения файлов для их редактирования (как это делают VSS или TFS), интеграция с IDE даже не важна. Лично я предпочитаю использовать git или subversion вне среды IDE.


И, пожалуйста, держитесь подальше от Visual SourceSafe , насколько это возможно.

7 голосов
/ 14 июля 2010

Я использую Ankh SVN вместе с Subversion на стороне сервера, и он отлично работает для меня. Mercurial и Git в последнее время более популярны, чем SVN, и есть также Visual HG , плагин Mercurial для Visual Studio.

Редактировать: Тем временем я переключился на Mercurial (Tortoise HG плюс Visual HG) и никогда не оглядывался назад. Если вы приехали из Subversion, вам понадобится несколько часов, чтобы привыкнуть к Mercurial, но после этого это действительно просто. Даже если вам не нужен распределенный CVS, Mercurial по-прежнему имеет множество приятных функций, которые недоступны в Tortoise SVN. Кроме того, он кажется немного более стабильным, особенно в отношении ветвления.

2 голосов
/ 25 июля 2010

Позвольте мне добавить еще одну опцию в список SCM, интегрированных с Visual Studio 2010: Plastic SCM .Вы можете проверить, как выглядит здесь .

Доступна версия Community Edition.

1 голос
/ 14 июля 2010

Как @Tomek предложил использовать Subversion.

Ознакомьтесь с этим постом, который поможет вам использовать Subversion и AnkhSVN (плагин VS) с VS2010

Visual Studio 2010, подрывная деятельность с АнХСВН

0 голосов
/ 30 августа 2012

Я использовал Subversion и Mecurial в проектах, и оба заставили меня вспомнить, с любовью работая с очень ненавистным (по уважительной причине) Visual Source Safe.Оба будут «работать», но оба показывают свои корни в Unix-программистах (без каламбура) с загадочными сообщениями об ошибках и тупыми, чёрными магическими занудами.Контроль исходного кода должен быть простым, надежным и не мешать работе.Ни SNV, ни Mecurial не соответствуют требованиям.Mecurial проще в использовании, если ничего не происходит неправильно - это примерно 80% времени.

Если вы работаете в одиночку, я бы использовал Mercurial.

Вот пример того, почему я ненавижу это:

нажатие на Z: \ Repos \ SupplierAdminWebRepo поиск изменений новых удаленных головок на ветви 'default' [Ошибка: прерывание: push создает новый удаленныйhead 9cfbad6249a9!] new remote head 9cfbad6249a9 [Ошибка: (вы забыли объединить? используйте push -f для принудительного ввода)]

[Операция завершена.Код выхода: 255]

...