Учебник по Git: изучение ветвления Git за 5 минут

Учебник по Git изучение ветвления Git за 5 минут Изучение

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

Что такое разветвление?

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

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

С Git вы начинаете с единственной основной ветки, называемой main. Любая другая фиксация, которую вы сделаете после этого, будет сделана в основной ветке, но Git позволяет вам создавать столько веток, сколько вы хотите.

Примечание: вам не всегда нужно создавать ветки из основной ветки. Вы можете создать новую ветку из любой другой ветки.

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

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

Создание веток

Локальный филиал доступен только вам на вашем физическом устройстве. Прежде чем вы сможете отправить ветку в удаленный репозиторий, вам необходимо сначала создать локальную ветку.

Читайте также:  6 лучших инструментов совместного кодирования для удаленного парного программирования

Если у вас уже есть локальный филиал, вы можете использовать git checkout:

git checkout <name>

Если у вас еще нет нужной ветки, вы можете создать новую ветку следующим образом:

git checkout -b <name>

Теперь, когда мы знаем, как создать новую локальную ветку, давайте посмотрим, как создать удаленную ветку.

Создание удаленных веток

Вы можете отправить свою локальную ветку в удаленное репо, и она станет удаленной веткой. Когда ветвь удалена, это означает, что любой, у кого есть доступ к удаленному репозиторию, теперь имеет доступ к удаленной ветке.

Если вы хотите переместить локальную ветку в удаленное репо, вы можете использовать git push:

git push -u origin <name>

Удаление веток

Теперь, когда мы знаем, как создать локальную ветку и удаленную ветку, давайте узнаем, как их удалить. Начнем с удаления локальной ветки с помощью -dфлага:

git branch -d <name>

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

Если вы уверены, что хотите удалить свою ветку, вы можете использовать -Dфлаг. Этот флаг принудительно удаляет.

git branch -D <name>

Удаление удаленных веток

Чтобы удалить удаленную ветку, вы используете git pushкоманду:

git push origin —delete <name>

Объединение веток

Git merge — важная функция ветвления. Слияние позволяет объединить две или более веток через фиксацию. Изменяется только целевая ветка. В нашем случае это будет основная ветка. История вашей функциональной ветки сохраняется.

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

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

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

git fetch —all

Затем перейдите в ветку, в которую вы хотите объединить изменения, и выполните их git checkout.

git checkout main

Теперь вы можете слиться myfeatureс основной веткой.

git merge myfeature

Вы можете проверить историю коммитов своего проекта в своем репозитории, чтобы проверить слияние. Если ваше слияние прошло успешно и ваша работа myfeatureзавершена, вы можете удалить эту экспериментальную ветвь, поскольку все изменения теперь интегрированы в основную ветвь.

Rebasing веток

Git rebase — это расширенная концепция в Git. Это может показаться немного сложным, но мы рассмотрим основы. Ребазинг и слияние очень похожи. Оба варианта берут коммиты из ветки и помещают их в другую ветку.

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

Вот как использовать перебазирование:

git checkout myfeature
git rebase main

Концепции Git, которые нужно изучить дальше

Поздравляем, вы сделали первые шаги в ветвлении Git! Многие команды используют Git, поэтому важно хорошо разбираться в системе управления и ее функциях. Еще так много предстоит узнать о Git. Вот некоторые рекомендуемые концепции для обсуждения:

  • Cherry-pick.
  • Advanced Git repository manipulation.
  • Pull requests.
  • Git commands.
Оцените статью
bestprogrammer.ru
Добавить комментарий