#git #svn
#git #svn
Вопрос:
Я слышал отличные рекомендации по git и svn, поэтому я решил попробовать сегодня, но я просто не могу понять, как они работают и как их использовать. Я понимаю, что есть разница между git и svn, но я просто получаю общий обзор, я попробовал оба и придерживаюсь того, с которым я работаю.
Я установил git и svn на свой компьютер с Ubuntu, где я занимаюсь веб-разработкой. Итак, я установил основной репозиторий git и svn (удаленный uri) в свою домашнюю папку и рабочий клон в моей папке /var/www/ . Могу ли я использовать это так?
Насколько я понимаю, как работают git и svn: вы создаете основной репозиторий, затем создаете клон, который копирует текущие файлы, затем вы можете добавлять / изменять / удалять файлы / папки, а затем отправлять (отправлять) их обратно в основной репозиторий с комментариями изменений (фиксация)…
Правильно ли я их понимаю? Мне кажется, единственное преимущество их использования заключается в том, что у вас есть резервная копия и вы можете давать комментарии (фиксация).
Комментарии:
1. Незначительное: при использовании только git (или других децентрализованных инструментов) вам не нужно создавать основной репозиторий и клонировать его в рабочую область. В git каждый (не пустой) репозиторий является рабочей областью, и наоборот.
Ответ №1:
Определенно согласен с Томасом в отношении документов и особенно руководств. Проработайте их, чтобы получить реальный практический опыт.
Что касается вашего вопроса, вы довольно хорошо справляетесь с ним. Важное отличие заключается в том, что SVN является «централизованным», что означает, что push и commit эффективно выполняются за один шаг, как и pull и checkout. Git хранит наборы изменений, а не ревизии. У Git также нет «основного» репозитория — вы можете создать репозиторий и назвать его основным, но на самом деле любой может создать свой собственный репозиторий и вносить только те изменения, которые он хочет.
И per mano: Git и SVN могут не предназначаться для резервного копирования, но если вы все равно используете резервное копирование, вы также можете создать резервную копию репозитория и заполнить историю изменений, а не только текущую версию. Тогда, если у вас произошел сбой, у вас все равно есть вся история изменений, но если вы делаете это с помощью SVN, вам нужно создать резервную копию основного репозитория, а не рабочего каталога.
Ответ №2:
Вы определенно хотите использовать git или mercurial вместо subversion. Если вы хотите получить хорошее представление о том, как использовать распределенную систему контроля версий, такую как Git или Mercurial, я рекомендую вам ознакомиться с HG Init . HG Init специфичен для mercurial, но он очень полезен для запуска и запуска, и концепции довольно легко переносятся в Git, если это то, что вы решите использовать.
Трудно дать полный обзор системы контроля версий в подобном вопросе. Вы должны прочитать руководство, начать использовать систему, а затем вернуться и задать, когда у вас появятся более конкретные вопросы (или попробуйте Google, там много ресурсов по этому вопросу).
Комментарии:
1. Я действительно должен поблагодарить вас за ссылку, она проста, понятна и действительно понятна. Еще раз спасибо, это руководство спасло мой день.
Ответ №3:
Просто прочитайте документацию. Это болезненно, но вы ДОЛЖНЫ это прочитать. Документация по управлению версиями просто не доставляет удовольствия. Также стоит ознакомиться с руководствами по Git и svn, поскольку они покажут более практичный пример.
Типичная ситуация для использования git вместо svn — это если проект очень большой. Subversion работает так же хорошо для небольших проектов (вопреки тому, что говорят некоторые).