Что означают эти слова в Git: репозиторий, форк, ветка, клон, трек? - PullRequest
129 голосов
/ 27 мая 2010

Я, честно говоря, не совсем понимаю семантику здесь. Они все о копиях / вариантах блока кода + истории, но в прошлом я не уверен, что мог бы сказать. Эта логическая структура где-то объяснена?

Ответы [ 3 ]

146 голосов
/ 27 мая 2010

Хранилище - это просто место, где хранится история вашей работы. Он часто находится в подкаталоге .git вашей рабочей копии - копии самого последнего состояния файлов, над которыми вы работаете.

Чтобы разветвить проект (взять источник из чьего-либо репозитория в определенный момент времени и применить к нему свои собственные расходящиеся изменения), вы должны клонировать удаленный репозиторий, чтобы создать его копию, а затем выполнить свою работу в локальный репозиторий и внесение изменений.

В репозитории у вас есть ветви, которые фактически являются ветвями в вашем собственном репозитории. Ваши ветки будут иметь фиксацию предка в вашем хранилище и будут отклоняться от этой фиксации с вашими изменениями. Позже вы можете объединить изменения вашей ветви. Филиалы позволяют работать с несколькими разнородными функциями одновременно.

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

В интернете есть много отличных книг по мерзавцам. Для начала ознакомьтесь с ProGit и Git Magic , а также с официальными учебными пособиями и сообществом.

13 голосов
/ 04 ноября 2010

Я собираюсь ответить на свой вопрос с RTFM.

Но, прочитайте это прекрасное руководство. Как говорит автор:

& ldquo; Из этого я делаю вывод, что вы действительно можете использовать Git, только если понимаете, как работает Git. Просто запомните, какие команды вы должны выполнять и в какое время будет работать в краткосрочной перспективе, но это только вопрос времени, когда вы застрянете или, что еще хуже, сломаете что-то.

& ldquo; К сожалению, половина существующих ресурсов в Git использует именно такой подход: они показывают, какие команды нужно выполнять, и ожидают, что у вас все будет хорошо, если вы просто имитируете эти команды. Другая половина проходит через все концепции, но из того, что я видел, они объясняют Git таким образом, который предполагает, что вы уже понимаете, как работает Git. & Rdquo;

3 голосов
/ 02 сентября 2013

Этот GoogleTechTalk является фантастическим введением в Git, чтобы узнать, что на самом деле происходит за кулисами, а также изучать язык. Он был предоставлен очень ранним участником Git, и он выступил с этим докладом в 2007 году как способ знакомства с Git. Если вы посмотрите этот доклад, вы не только узнаете, что такое каждое слово, например, хранилище, ветвь, ветвь и т. Д., Но также узнаете, что происходит за кулисами, когда каждое из них создано, объединено и т. Д.

Адрес длинный, но очень информативный. Он также противопоставляет Git другим системам управления версиями, чтобы вы поняли, почему Git был создан таким, каким он был, и каковы его сравнительные преимущества по сравнению с другими системами управления. Несмотря на то, что разговор старый, очень полезно начать работу. Я бы посмотрел это, прежде чем прыгнуть в руководства. Я думаю, что в результате все станет намного более логичным.

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