Изучаем Git глубже

Надеемся, что вам уже приходилось использовать базовые команды Git для создания репозитория и отправки кода на Github. Если же нет, то придется кое-чему научиться, но не беспокойтесь по этому поводу.

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

В этом уроке мы пойдем дальше часто используемых нами команд $ git add ., $ git commit и $ git push. Может быть, вы уже получали сомнительное удовольствие разрешать конфликт слияния веток (branch). А может вам просто любопытно, как множество разработчиков могут работать одновременно с одним и тем же кодом. В любом случае, этот раздел должен помочь вам сделать первые шаги в улучшении навыков работы с Git, а также понять, что происходит у него под капотом.

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

Мы начнем с повторения пройденного материала, это поможет освежить основные моменты. Затем изучим как использовать Git более эффективно, вне зависимости от того, работаете ли вы над собственным проектом, или же совместно с другими разработчиками.

Пункты для размышления

Постарайтесь ответить на предложенные вопросы. После выполнения задания попробуйте ответить на них ещё раз

  • Как изменить комментарий к коммиту, если вы его забыли указать?
  • Как посмотреть историю недавних коммитов?
  • Какие существуют два различных варианта использования команды $ git checkout?
  • Как отменить последний коммит?
  • Что такое ветки?
  • Как создать новую ветку для работы с ней?
  • Как синхронизировать вашу локальную ветку с веткой на гитхабе ?
  • Как добавить изменения, внесенные в локальной ветке, в главную (как смержить локальную ветку в master)?
  • Почему полезно использовать ветки?
  • В чем разница между использованием $ git merge и $ git rebase?
  • В чем разница между локальным и удаленным репозиториями?
  • Как добавить удаленный репозиторий с Github?

Задания

Примечание: Subversion (SVN) была широко используемой системой контроля версий до Git (и до сих пор распространена во многих компаниях), поэтому, многое что вы прочитаете ниже, ссылается на нее. Для большей ясности по этому вопросу, прочтите два верхних раздела этой главы от git-scm.

  1. Выполните изложенное в этом разделе, если пропустили его по каким-то причинам.
  2. Если до сих пор чувствуете себя неуверенным, посмотрите Основы Git от Atlassian.
  3. Посмотрите раздел Отмена изменений от этого же источника.
  4. Прочтите об Использовании ветвлений, а затем посмотрите, как это происходит в реальной работе здесь.
  5. Перезаписывание истории Git дает понимание, как работает rebase. Многие спорят о том, какой метод лучше использовать в работе - "Merge" или "Rebase". Мы будем использовать merge. Этот метод проще в освоении и при его использовании легче бороться с ошибками, - но вы должны быть знакомы с существованием других методик.
  6. Прочтите о работе с Удаленными репозиториями, с которыми сейчас вы уже должны быть достаточно знакомы.
  7. Расширьте свои познания, прочитав главы 2 и 3 от Pro Git.

Дополнительные ресурсы

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

  • Посмотрите Начало работы с Git, если надо вспомнить основные моменты.

Поделиться уроком: