Образовательный проект «SnakeProject» Михаила Козлова

Навигация

⇒ FreeBSD and Nix ⇐

CISCO

Voice(Asterisk\Cisco)

Microsoft

Powershell

Python

SQL\T-SQL

Общая

WEB Разработка

ORACLE SQL \ JAVA

Мото

Стрельба, пневматика, оружие

Саморазвитие и психология


Git merge и rebase как варианты слияния веток


Git merge и rebase как варианты слияния веток


MERGE - мягкий, с сохранением истории

Создадим локальный репозиторий с тестовым файлом

mkdir test-repo && cd test-repo
git init
git branch main
git checkout main
echo "Test" > test.txt
git add . && git commit -m "initial commit"


Создадим две ветки и добавим с тестовыми файлами

git branch branch-a
git checkout branch-a
echo "Test A" > a.txt
git add . && git commit -m "add A"

git branch branch-b
git checkout branch-b
echo "Test B" > b.txt
git add . && git commit -m "add B"


Делаем коммит в main
(эмуляция появления изменений за время работы в ветках)

git checkout main
echo "update" > update.txt
git add . && git commit -m "add update.txt"


Вливаем ветки branch-a и b в main

git checkout main
git merge branch-a
git merge branch-b 


Вывод git log
(Вся история объединений сохранилась, наглядно ниже)


REBASE - жесткий, с переписыванием истории

Создадим локальный репозиторий с тестовым файлом

mkdir test-repo && cd test-repo
git init
git branch main
git checkout main
echo "Test" > test.txt
git add . && git commit -m "initial commit"


Создадим две ветки и добавим с тестовыми файлами

git branch branch-a
git checkout branch-a
echo "Test A" > a.txt
git add . && git commit -m "add A"

git branch branch-b
git checkout branch-b
echo "Test B" > b.txt
git add . && git commit -m "add B"


Делаем коммит в main
(эмуляция появления изменений за время работы в ветках)

git checkout main
echo "update" > update.txt
git add . && git commit -m "add update.txt"


Вливаем ветки branch-a и b в main

git checkout branch-a
git rebase main
git checkout main
git merge branch-a 

git checkout branch-b
git rebase main
git checkout main
git merge branch-b 


Вывод git log
(История без подробностей о работе в ветках)

 


Комментарии пользователей

Эту новость ещё не комментировалиНаписать комментарий
Анонимам нельзя оставоять комментарии, зарегистрируйтесь!

Контакты Группа ВК Сборник материалов по Cisco, Asterisk, Windows Server, Python и Django, SQL и T-SQL, FreeBSD и LinuxКод обмена баннерами Видео к IT статьям на YoutubeВидео на другие темы Смотреть
Мои друзья: Советы, помощь, инструменты для сис.админа, статическая и динамическая маршрутизация, FreeBSD

© Snakeproject.ru создан в 2013 году.
При копировании материала с сайта - оставьте ссылку.
Весь материал на сайте носит ознакомительный характер,
за его использование другими людьми, автор ответственности не несет.

Рейтинг@Mail.ru
Рейтинг@Mail.ru Яндекс.Метрика





Поддержать автора и проект