Обучение управлению версиями для первокурсника колледжа - PullRequest
5 голосов
/ 30 июня 2009

Я новичок в колледже CS, который хочет хорошо изучить систему контроля версий. В настоящее время я смотрю на Subversion, Perforce и Surround SCM.

Я бы интегрировал систему с Eclipse на платформе Linux. В основном, это будет код C ++, Java и LaTeX (который я также буду использовать в Eclipse).

Скорее всего, я буду единственным пользователем, но преимущество SVN состоит в том, что он с открытым исходным кодом, в то время как два других являются частными. Я слышал много хороших отзывов о TortiseSVN, но так как я использую Linux, я буду упускать это.

РЕДАКТИРОВАТЬ: Спасибо за все ответы. Конечно, я открыт для любых других систем контроля версий. Я буду проверять Git и Mercurial.

Ответы [ 8 ]

8 голосов
/ 30 июня 2009

Если вы изучаете системы контроля версий, вам определенно стоит рассмотреть одну из более новых «распределенных» систем контроля версий, например Git или Mercurial . Ограничивая свой охват инструментами предыдущего поколения, как вы упомянули, вы упустите тот факт, что (некоторые) люди действительно используют сегодня.

Для изучения системы я, вероятно, не рекомендовал бы выбирать коммерческое предложение. Вы получите гораздо лучшую поддержку и документацию, бесплатно, с открытым исходным кодом.

5 голосов
/ 30 июня 2009

Если это ваши единственные варианты, определенно SVN. Это тот (из этого списка), который используют настоящие люди в дикой природе.

Честно говоря, учите DVCS. Мерзавец, Меркурий, Даркс, один из них.

1 голос
/ 30 июня 2009

SVN очень прост в освоении. Для тех, кто использует Windows, отличная версия GUI.

Даже если вы работаете в Linux, я все равно рекомендую изучить его, потому что он широко используется в таких местах, как Google Code, Python, Wordpress и т. Д.

1 голос
/ 30 июня 2009
1 голос
/ 30 июня 2009

Я бы хотел вторую (или третью) те, которые предлагали Git или Mercurial (или Bazaar). Распределенные системы контроля версий не просто хороши для проектов с несколькими участниками; Я использую Git для любых проектов, которые я запускаю, даже если они просто одноразовые. По сути, ваша папка разработки является вашим хранилищем - она ​​переносима, и в нее легко добавить больше участников и перейти к более традиционному централизованному рабочему процессу позже.

Я рекомендую Git особенно потому, что у него немного крутая кривая обучения, но он многому научил меня по управлению проектами, управлению ревизиями, как объединять и исправлять файлы, как читать вывод 'diff' и т.д. действительно позволяет перейти к мелкозернистым деталям контроля версий.

1 голос
/ 30 июня 2009

Если вы собираетесь быть единственным в проекте, определенно стоит проверить SVN. Получить Subclipse , плагин Eclipse для Subversion, и привыкнуть к этому. Затем перейдите к другим системам контроля версий, как только вы почувствуете себя комфортно.

0 голосов
/ 30 июня 2009

Я бы порекомендовал Subversion, просто из-за его распространенности в проектах с открытым исходным кодом. Определенно, есть много возможностей использовать свои знания Subversion для использования в проектах с открытым исходным кодом, и если вы это сделаете, вы узнаете много нового о кодировании, работе в команде и о правильном использовании VCS в команде (а это половина обучения использованию VCS, и это трудная часть, потому что вы не можете изучить ее самостоятельно). Меньше проектов с открытым исходным кодом используют проприетарные VCS, что означает, что у вас будет меньше возможностей использовать их в реальном мире, если вы не работаете специально с друзьями или в качестве работы. Я не использовал две другие, которые вы упомянули, но у меня нет претензий к Subversion, его довольно просто использовать.

Я также хотел бы порекомендовать распределенную VCS, такую ​​как git. С распределенной VCS, поскольку каждый участник проекта имеет полную копию исходного репозитория и имеет полный контроль над своей собственной копией, это означает, что вам предоставляется большая гибкость в использовании возможностей VCS. Вы обнаружите, что у вас есть свобода делать коммиты так часто, как вы хотите, и создавать новые ветки в любое время, что замечательно, когда вы вносите изменения в код и хотите, чтобы при необходимости вы могли вернуться к старой версии. , Распределенная VCS позволяет вам использовать VCS в качестве инструмента для облегчения кодирования, а не просто для хранения и передачи вашего кода другим. Также очень легко настроить новый репозиторий в распределенной VCS. С git вы просто запускаете git init, и он установит контроль версий в текущем каталоге. Насколько это просто?

0 голосов
/ 30 июня 2009

Bazaar просто великолепен для разработки без участия человека. Установка занимает всего пять минут, и она работает немедленно. Он обладает мощью больших VCS ... но его достаточно легко использовать самостоятельно.

Я слышал, что Git и Mercurial правы в том же духе ... но я использовал только Bzr.

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