Слияние реальностей
Теперь, когда мы сделали потрясающие открытия в нашей альтернативной реальности, пришло время вернуть их в нашу основную вселенную. Этот процесс называется слиянием (merge).
- Сначала вернемся в нашу основную реальность:
git checkout master
или
git switch master
Обе команды возвращают нас на ветку master
.
git checkout
- это более старая команда для переключения между ветками. Она существует с самых ранних дней Git и по-прежнему поддерживается.
git switch
- это новая команда, введенная в Git 2.23. Она разработана для более интуитивного и легкого понимания.
Вы можете использовать любую из этих команд для переключения веток, но git switch
обычно предпочтительнее из-за своей ясности.
Если вы посмотрите на свои файлы сейчас, заметите, что ваш межмерный артефакт исчез! Не беспокойтесь, он в безопасности в другой реальности. Это демонстрирует, что изменения в одной ветке изолированы от других веток до тех пор, пока они не будут объединены.
- Теперь объединим нашу альтернативную реальность с основной историей:
git merge feature-dimension
Эта команда сообщает Git взять все изменения из ветки feature-dimension
и применить их к ветке master
. Это как интеграция открытий из нашей альтернативной реальности в нашу основную вселенную.
Вы должны увидеть сообщение, подобное этому:
Updating <hash1>..<hash2>
Fast-forward
README.md | 2 ++
dimensional-artifact.txt | 1 +
2 files changed, 3 insertions(+)
create mode 100644 dimensional-artifact.txt
Этот вывод сообщает, какие файлы были изменены и сколько строк было добавлено или удалено. "Fast - forward" означает, что Git смог просто переместить ветку master
вперед до того места, где была ветка feature-dimension
, потому что не было конфликтных изменений. Быстрое продвижение (fast - forward merge) - это самый простой тип слияния, которое происходит, когда ветка, в которую вы объединяете, не изменялась с момента создания ветки, из которой вы объединяете.
Поздравляем! Вы только что объединили две реальности! Изменения, которые мы внесли в ветке feature-dimension
, теперь являются частью нашей основной вселенной. Наш межмерный артефакт и обновленная документация теперь присутствуют в нашей ветке master
.
- Убедимся, что наш артефакт пережил слияние:
cat dimensional-artifact.txt
cat README.md
Эти команды отобразят содержимое файлов. Вы должны увидеть изменения, которые мы внесли в ветке feature-dimension
. Эти команды подтверждают, что слияние прошло успешно.
Вы успешно привели свои открытия из альтернативной реальности в основную историю. Именно так разработчики вносят новые функции в свои основные проекты! Это один из основных концептов в Git, который позволяет разработчикам работать над функциями в изоляции, а затем интегрировать их в основной кодовой базис, когда они готовы.
Если вы хотите увидеть список всех веток, которые были объединены в текущую ветку, вы можете использовать команду git branch --merged
. Это может быть полезно для отслеживания, какие ветки были интегрированы.