С чего начать с контроля версий
У кого-нибудь есть какие-либо предложения о том, с чего начать новичку, желающему опробовать какой-то контроль исходного кода вместе с новым путешествием в ASP.NET? SVN, VSS, CVS... Я даже не знаю с чего начать!
29 ответов
Множество людей здесь предложили введение и подробные инструкции, которые помогут рассказать вам, как делать то, что вы хотите.
Кроме того, я бы дал три совета новичку о том, как узнать, что вы хотите:
1) Контроль версий ВСЁ (то есть всё, что ты пишешь).
Контроль версий файлов проекта. Контроль версий ваших тестовых случаев. Контроль версий любых маленьких скриптов, которые вы используете для копирования вещей. Контроль версий вашего списка задач. Определенно, версия контроля вашего дизайна заметок. Как только вы ознакомитесь с командами, это ничего не будет стоить, и однажды вы будете рады истории файла, который вы даже не предполагали откатить.
2) Когда вы довольны изменением, немедленно зарегистрируйте его. И проверить все это.
Если вы работаете в последовательных шагах (а это не всегда происходит - вы можете отвлекаться - но это хорошая практика), то в начале каждого нового шага у вас должно быть 0 измененных файлов в вашей кассе. Вы можете даже захотеть проверить незаконченный нерабочий код, в зависимости от того, что вам подходит.
3) Когда вы достигнете вехи, отметьте его.
Даже ваши собственные личные цели (дюйм-галька). Если вы не можете быть обеспокоены тегами, просто запишите дату и время (в, как вы уже догадались, файл с управлением версиями). Если какая-то конкретная версия по какой-то причине запоминается ("Я закончил бэкэнд", "Я отправил ее кому-то еще, чтобы посмотреть"), вы хотите точно знать, что в ней было. Различия с хранилищем позволяют диагностировать некоторые ошибки быстрее, чем отладчик.
Просто убедитесь, что держитесь подальше от визуального источника в безопасности.
Эрик Синк в Source Control HOWTO.
Прочтите его, затем загрузите Subversion (бесплатно) или Vault (бесплатно для одного пользователя) и начните играть с ним.
Очень специфичен для Subversion, но дает хорошее представление об основах контроля версий.
Я думаю, что самый простой способ - получить бесплатный сервер SVN через какого-либо бесплатного провайдера. Я использую ассембл.
Затем, если вы находитесь в Windows, вы должны скачать TortoiseSVN. Это, безусловно, самый простой в использовании клиент Subversion.
Начните с импорта текущего проекта в хранилище, и тогда вы готовы к работе.
Я буду рекомендовать Subversion или Visual Studio Team Foundation Systems в зависимости от того, сколько денег вы готовы раскошелиться.
Ознакомьтесь с Visual SVN (Subversion для фанатов VS) - он прекрасно интегрируется с Visual Studio: http://www.visualsvn.com/
Я рекомендую начать с SVN, немного легче освоиться, чем некоторые другие.
Черепаха - хорошее начало. Он прост в установке и интегрируется с оболочкой Windows, что означает, что все достаточно интуитивно понятно при щелчке правой кнопкой мыши на папках / файлах и т. Д. Довольно неплохой документ.
Вам также понадобится сервер / хост SVN для соединения с... Я могу порекомендовать Assembla, который можно бесплатно зарегистрировать и который предоставит вам сервер SVN для игры.
В настоящее время я бы просто начал с распределенной системы. Их проще настроить (вам не нужно настраивать сервер и / или найти его в сети: просто init
какой-то случайный каталог и начните делать свои вещи) и такой же легкий / сложный для понимания, как и централизованные.
Вот некоторые, на которые люди должны обратить внимание при выборе распределенной системы контроля версий:
Если вы застряли в Windows, я бы держался подальше от Git (по крайней мере, пока). Кажется, что в настоящее время поддерживается Git в Windows, но я еще не пробовал.
Сначала я познакомился с SVN с использованием черепахи SVN, мне понравилось, а позже компания использовала Visual Sourcesafe, как я скучал по использованию черепахи.
Если вы на 100% .NET и у вас есть лицензия разработчика MSDN, запустите TFS для рабочих групп. Это довольно просто и солидно.
Если у вас нет лицензии, проверьте Subversion. Это хороший, бесплатный источник управления, который имеет плагины для интеграции Visual Studio.
Если вы только начинаете, я бы порекомендовал прочитать бесплатную книгу Subversion. Это широко используемая система, бесплатная, и ее будет относительно легко понять, когда вы начнете.
Получить копию книги Pragmatic Version Control Используя Subversion - это поможет вам начать работу.
http://ecx.images-amazon.com/images/I/51XYQTP2BYL._SL500_AA240_.jpg
Начните с Subversion. Документация в Интернете, и книга Pragmatic Programmers Svn великолепна.
Если вы работаете в Windows, вы также можете получить TortoiseSvn (бесплатно) для интеграции с проводником или VisualSvn (бесплатно) для интеграции с Visual Studio. Для Mac версии выглядят как хороший автономный клиент, а в XCode 3 встроена интеграция SVN. Тем не менее, я бы потратил немного времени в командной строке, используя клиент SVN, чтобы действительно понять, что вы делаете.
После того, как вы освоитесь с тем, как работает svn, вы можете перейти к распределенным системам контроля версий, таким как Git, Bazaar или Mercurial, но я видел, что у многих профессиональных разработчиков возникают проблемы, связанные с основами контроля версий (объединение ветвей и т. Д.) что я сначала освоился с этим, прежде чем перейти к распределенным системам.
Держитесь подальше от Visual SourceSafe (VSS). Это какашки. Ваш код не является безопасным. Посмотрите эти многочисленные ссылки, почему бы не использовать VSS.
Просто установить инструменты недостаточно. Вы должны понимать, как работает конкретная технология (например, SVN) и как должно работать все дерево исходных текстов: лучшая структура, тегирование, ветвление, слияние и т. Д. Поскольку мы используем SVN, я рекомендую Subversion Book. У этого есть некоторые хорошие объяснения понятий контроля источника.
Какой исходный контроль действительно использовать, зависит от вашей среды, вашей корпоративной культуры и общей ситуации, когда проекты обрабатываются в вашей компании. Более новый "Visual Source Safe" в Team Foundation на порядок лучше, чем тот, что был в VSS. и хорош в магазине Microsoft с одним или несколькими местоположениями. Я также очень успешно использовал Subversion, и он хорошо интегрируется в Eclipse. Я не люблю откладывать продукты, так как, я думаю, у всех есть свои положительные и отрицательные стороны. Но те два, которые я упомянул выше, являются действительно хорошими продуктами контроля версий / версий. Если вы только начинаете и хотите поглотить ноги и изучить методы управления исходным кодом и общие концепции, загрузите продукт с открытым исходным кодом, такой как CVS или Subversion, загрузите его и опробуйте.
http://www.ericsink.com/scm/source_control.html содержит полезную информацию для работы.
- Я повторно редактирую этот комментарий, чтобы отметить, что он выглядит как кто-то, связанный с этой ссылкой контроля источника в предыдущем посте.:) Черт возьми, я не был первым, чтобы отправить это.
Пришлось второе чтение книги Subversion. Кроме того, программное обеспечение является бесплатным, работает в большинстве сред и легко запускается.
Проверьте Subversion (SVN), чтобы начать. Как предлагается в других статьях, есть отличная бесплатная электронная книга, которая не только описывает, как использовать SVN, но и является отличным началом для концепций.
Для простого в настройке сервера, проверьте бесплатный сервер от VisualSVN.
Если вы используете Visual Studio, вы можете использовать их надстройку (стоимость) или открытый исходный код Ankh SVN. Если вы используете другие IDE, Tortoise SVN интегрируется с Explorer в Windows.
По моему мнению, если у вас уже есть Viual Source Safe и вы являетесь одним разработчиком, работающим с VS, это прекрасно. Это простая система, которая достаточно хорошо работает для небольших проектов разработчиков. Я использовал его в течение многих лет без каких-либо проблем для небольших проектов. Простое управление и резервное копирование.
Вы можете начать просматривать этот сайт.
Еще один голос за Subversion / TortoiseSVN, но обратите внимание, что он не очень хорошо работает с домашним NAS-сервером FAT32.
Я рекомендовал попробовать бесплатные распределенные системы контроля версий. Большинство из них очень просты в настройке на вашем персональном компьютере и поставляются с хорошей документацией. Вот мои любимые: 1. Базар 2. Mercurial 3. Git (насколько я знаю, только для систем на * nix)
Смотрите список здесь:
http://en.wikipedia.org/wiki/List_of_revision_control_software
Я теряю веру всему сообществу контроля источников. Все говорят, что VSS чертовски плох, нравится это старое предубеждение, C++ намного лучше, чем C, Win Vista ужасна, а XP слишком стара, чтобы служить миру. И все же многие люди их используют. Вы никогда не знаете, как вам нужен инструмент, прежде чем использовать его. И каждое приложение контроля версий состоит из ошибок и дефектов. И VSS просто так сложно отбросить.
Попробуйте Unfuddle для бесплатного размещения исходного контроля SVN.
Я полагаю, что стратификация - это система распределенного контроля версий (например, Mercurial или Git). Есть некоторые преимущества его использования:
- Вам не нужно настраивать центральное хранилище (это требует утомительной настройки сервера)
- Вы можете делиться ревизиями (ревизиями) со своими друзьями, используя электронную почту или другим способом, и безопасно вносить изменения в свой репозиторий.
- Вы можете легко изменить историю ревизий (rebase, git поддерживает), что невозможно сделать с SVN.
Комментарии к продуктам, которые я использовал:
VSS - Не использовал его некоторое время (несколько лет), в то время как он делал основы того, что мы хотели, но мы достаточно регулярно сталкивались с различными проблемами, поэтому мы активно искали лучшее решение. Если у вас есть бесплатный доступ, то не мешало бы познакомиться с их реализацией, чтобы увидеть, что в то время было другим способом решения проблем (они, возможно, уже соответствовали остальным продуктам),
CVS - использовал это в предыдущей компании и работал с первоначальным автором tortoiseCVS, так что я, возможно, немного предвзят, думая, что это было достойное решение с открытым исходным кодом. Я бы рекомендовал начинать здесь лично, все доступно и широко используется.
Perforce - наши решения по управлению исходным кодом наших компаний, и в целом они хорошо известны в команде. Пара альтернативных интерфейсов, которые могут выбирать люди, и хорошая поддержка командной строки (жизненно важно для взаимодействия инструментов). Если вы оцениваете компанию, я бы обязательно включил это в ваш список.
Visual Source Safe (VSS) хорош для начинающих, потому что вы не будете знать, что вам не хватает. Когда вам нужно что-то более сложное, тогда беспокойтесь о приобретении какого-либо другого продукта.