Git - это DVCS ( Распределенная Система контроля версий)
В Git (локально) есть каталог (.git /) в корневом каталоге проекта, в который вы фиксируете свои файлы.
Git - это DVCS ( Distributed Система контроля версий), которая позволяет вам часто сохранять копии («версии») файлов с возможностью объединения работ, выполненных более чем одним человеком, и у вас также есть способность работать в автономном режиме.
Git отличается от более традиционных CVS (систем управления версиями кода), таких как SVN (Subversion) или CVS, которые имеют ветви, но не имеют понятия «локальный и удаленный» (ваши коммиты напрямую на удаленный). С помощью git вы сначала фиксируете свой локальный репозиторий, а затем отправляете эти изменения на удаленный компьютер. Это поощряет более частую фиксацию и работу, выполняемую небольшими порциями. Он также намного лучше поддерживает работу в автономном режиме, поскольку вы можете выполнять фиксацию в автономном режиме, а затем синхронизировать и извлекать / нажимать при следующем подключении.
Git сохраняет каждое изменение в файле, сохраняя весь файл. В этом отношении он отличается от svn, и вы можете перейти к любой отдельной версии, не «воссоздавая» ее с помощью дельта-изменений.
Git не блокирует файлы и требует эксклюзивной блокировки для редактирования (вспоминаются более старые системы, такие как pvcs). На самом деле он выполняет потрясающую работу по объединению изменений файла (в одном файле!) Вместе во время извлечения или извлечения. Единственное время, когда вам нужно внести изменения вручную, это если два изменения затрагивают одну и ту же строку (и) кода.
Филиалы
Это когда вы хотите сохранить основной код, сделать копию (ветвь) и затем работать в этой ветке. Когда вы закончите, вы сливаете ветку обратно в главный репозиторий. Одним из примеров этого может быть, если вы работаете над обновлением до новой версии.
Некоторые магазины и отдельные лица выполняют всю работу, будь то функция, исправление ошибки или рутинная работа, в отдельных ветвях с отдельным процессом и / или назначенным лицом для объединения этих веток в мастер.
Таким образом, с веткой вы управляете ветвью, тогда как с вилкой кто-то еще контролирует принятие кода обратно. В любом случае это стандартное использование.
Github
github (удаленный) - это удаленный источник, в который вы обычно отправляете и извлекаете эти зафиксированные изменения, если у вас есть (или добавлены) такой репозиторий.
Так что локальные и удаленные на самом деле довольно разные.
Когда вы 'форк', т.е. нажимаете - , скажем, на github, вы создаете копию кода в вашей учетной записи github. Когда вы делаете это в первый раз, это может показаться немного неуловимым, поэтому следите за тем, чтобы в чьем репозитории была указана база кода - либо первоначальный владелец, либо «пользователь», например,
Получив локальную копию, вы можете вносить изменения по своему усмотрению (вытягивая и отправляя их на локальный компьютер). Когда вы закончите, вы отправляете «запрос на извлечение» поверх оригинального владельца / администратора репозитория (звучит странно, но на самом деле вы просто нажимаете на это: - ), и они «вытягивают» его.
Клонирование
Более распространенной для команды, работающей над кодом, является «клонирование» хранилища (щелкните значок «Копировать» на главном экране хранилища). Затем, локально наберите git clone [paste]. Это настроит вас локально, и вы сможете напрямую перемещать и извлекать файлы в общую папку github.
Визуализация
У меня нет визуализации основных понятий, но если вы хотите увидеть, как работают изменения, вы не можете превзойти визуальный инструмент gitg (gitx для mac) с графическим интерфейсом, который я называю «метро» карта »(особенно в лондонском метро), отлично подходит для того, чтобы показать, кто что сделал, как все меняется, расходятся и объединяются и т. д. Вы также можете использовать ее для фиксации и управления локальными изменениями ...