Я честно не понимаю здесь семантики. Они все о копиях/вариантах кода + блок истории, но в прошлом я не уверен, что могу сказать. Является ли эта логическая структура объясненной где-то?
Что означают эти слова в Git: репозиторий, fork, branch, clone, track?
Ответ 1
Репозиторий - это просто место, где хранится история вашей работы. Он часто находится в подкаталоге .git
вашей рабочей копии - копии последнего состояния файлов, над которыми вы работаете.
Чтобы разветкить проект (взять источник из какого-то репозитория в определенный момент времени и применить к нему свои собственные отклоняющиеся изменения), вы клонируете удаленный репозиторий, чтобы создать его копию, а затем выполните свою собственную работу в своем локальный репозиторий и фиксации изменений.
Внутри репозитория есть ветки, которые эффективно вилки в вашем собственном репозитории. Ваши ветки будут иметь предок-фиксацию в вашем репозитории и будут отклоняться от этой фиксации с вашими изменениями. После этого вы можете объединить изменения ветки. Филиалы позволяют сразу работать с несколькими разрозненными функциями.
Вы также можете отслеживать отдельные ветки в удаленных репозиториях. Это позволяет вам вносить изменения из других отдельных ветвей и объединять их в свою собственную ветку. Это может быть полезно, если вы и друг вместе работаете над новой функцией.
В Интернете есть много отличных книг git. Посмотрите ProGit и Git Magic, чтобы получить начались, а также официальные учебные пособия и сборник.
Ответ 2
Я собираюсь ответить на свой вопрос с помощью RTFM.
Но, прочитайте это точное руководство. Как пишет автор:
"Вывод из этого состоит в том, что вы можете реально использовать Git, если вы понимаете, как работает Git. Простое запоминание того, какие команды вы должны запускать в какое время будет работать в краткосрочной перспективе, но это только вопрос времени, прежде чем вы застрянете или, что еще хуже, сломаете что-то.
" Половина существующих ресурсов на Git, к сожалению, использует именно такой подход: они проводят вас через какие команды запускать, когда и ожидаете, что вам следует делать все, чтобы просто имитировать эти команды. через все концепции, но из того, что я видел, они объясняют Git таким образом, что вы уже понимаете, как работает Git.
Ответ 3
Этот GoogleTechTalk представляет собой фантастическое введение в Git, чтобы узнать, что на самом деле происходит за кулисами, изучая язык. Это было дано очень ранним участником Git, и он дал этот разговор в 2007 году как способ введения в Git. Если вы будете следить за этим разговором, вы не только узнаете, что такое каждое слово, как репозиторий, вилка, ветвь и т.д., Но вы также узнаете, что происходит за кулисами, когда каждый из них сделан, слит и т.д.
Адрес длинный, но очень информативный. Он также противопоставляет Git другим системам управления версиями, чтобы вы поняли, почему Git был создан так, как он был, и каковы его сравнительные преимущества по сравнению с другими системами управления. Несмотря на то, что разговор устарел, очень полезно встать и работать. Я бы посмотрел на это, прежде чем я вскочил в руководства. Думаю, в результате все будет иметь большее значение.