Работа с удаленными репозиториями Git

แชร์
ฝัง
  • เผยแพร่เมื่อ 21 ต.ค. 2024

ความคิดเห็น • 15

  • @stasonsv52
    @stasonsv52 2 ปีที่แล้ว

    Лайк поставил. :)

  • @СашаМуха-ч4м
    @СашаМуха-ч4м 2 ปีที่แล้ว

    Классно получается!
    Жаль мало видео по GIT. Нашел только 3(.
    Планируете еще видео по GIT? merge, rebase, squash, cherry-pick, работа с историей и т.д. и более глубоко.
    Особенно интересно, когда Вы не просто говорите какой результат выполнения функции, а показываете что именно происходит - картинки, промежуточные процессы.
    Например, в этом видео не совсем понятно куда сохранилась информация после git fetch, она же была скачана с удаленного репозитория?
    Если будете продолжать по GIT, было бы классно нумеровать видео - 1,2,3 и т.п..
    Иногда когда смотришь видео например 5, не хватает знаний по терминам из предыдущих видео.
    Самому строить последовательность сложновато.
    Спасибо большое за контент!

    • @lectoria
      @lectoria  2 ปีที่แล้ว

      Пока видео по Git не планируется, так как сконцентрирован совершенно на других задачах. Я изначально планировал делать независимые видео, поэтому их никак и не нумеровал. Все равно спасибо за предложение.

  • @pvm1221
    @pvm1221 3 ปีที่แล้ว

    Честно говоря не совсем понял про клонирование. Получается всё равно нужен главный репозиторий. Автор начал рассказавать с git init, но потом пришлось создавать пустой репозиторий другим способом.

    • @lectoria
      @lectoria  3 ปีที่แล้ว

      Для клонирования нужен репозиторий, который, собственно, клонируется. Это может быть как удаленный репозиторий, расположенный где-то в сети и к нему можно обратиться по или через ssh (например так через https: git clone github.com/azernov/gitmodx, либо так через ssh: git clone git@gihub.com:azernov/gitmodx), так и локальная папка, в которой также располагается репозиторий (папка .git) - такой репозиторий клонируется командой git clone /путь/до/вашей/папки/с/клонируемым/репозиторием

  • @szed8135
    @szed8135 3 ปีที่แล้ว

    2:50 Вот тут не понял, что значит связывает удаленную ветку с локальной веткой? Что вообще за ветки?
    8:02 Далее говорите о локальной ветке, сначала я думал что локальных веток нет, а есть только удаленные, локальный только репозиторий. Поучается это не так и есть еще и ветки локальные?

    • @lectoria
      @lectoria  3 ปีที่แล้ว +1

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

    • @szed8135
      @szed8135 3 ปีที่แล้ว

      @@lectoria И еще момент не понял, для чего нужен git fetch? Ведь вроде бы достаточно команды git pull
      Или нужно сначала вызывать git fetch чтобы скачать файлы, а потом вызывать git pull чтобы слить их с локальными файлами?

    • @lectoria
      @lectoria  3 ปีที่แล้ว

      @@szed8135 git fetch просто вытягивает изменения из удаленного репозитория. По сути синхронизирует локальную копию удаленного репозитория с удаленным репозиторием. Но при этом, локально вы работаете со своим локальным репозиторием, в котором может быть отслеживаемая ветка, которая указывает на локальную копию удаленной ветки: master -> origin/master
      Так вот git fetch обновляет origin/master, но не копирует эти изменения в master
      А git pull обновляет origin/master и сразу же пытается влить новые изменения в master

    • @szed8135
      @szed8135 3 ปีที่แล้ว

      ​@@lectoria Посмотрел новый урок по git. И теперь этот урок стал понятен.
      Появился еще вопрос по отслеживанию. Тут на 22:15 что означает изменения origin/master попадут сразу же в локальную ветку newmaster? Автоматически произойдет git fetch или git pull? или все же надо будет самому эти команды выполнять? не понятно как они сразу же попадут.

    • @lectoria
      @lectoria  3 ปีที่แล้ว +2

      @@szed8135 Очень правильный вопрос!
      Уточню. Ветка newmaster - это локальная ветка. То, что происходит в ней, попадёт в ветку origin/master ТОЛЬКО в том случае, если мы сделаем push.
      Ветка origin/master - это фактически тоже локальная ветка, но она будет автоматически обновляться, если мы сделаем git fetch или git pull. Только git pull автоматически продвинет указатель master на последний коммит и указатели origin/master и newmaster будут указывать на один и тот же коммит. А если мы сделаем git fetch, то newmaster останется без изменений, а origin/master будет смотреть на последний коммит, вытащенный из удаленного репозитория.
      Для лучшего понимания веток рекомендую посмотреть видео про ветвления. Будет тогда четкое понимание, что такое ветки (по факту это просто указатели на определенные коммиты): th-cam.com/video/jliJnOx2iQM/w-d-xo.html