← До фільтрів та технологій

← До списку лабораторних по Git

Git Лабораторна 90: Актуалізація гілки з фічею

Технологія: Git

Номер лабораторної: 90 · Рівень: middle

Тема: Rebase main у feature проти merge main у feature

Повний опис / сценарій лабораторної:

Meta: навчитися оновлювати гілку з фічею останніми змінами з main і розуміти наслідки rebase та merge.



Krok 1. Створити гілку feature90 від main.

Komanda: cd ~/git_lab1 && git switch -c feature90



Krok 2. Зробити один коміт у feature90.

Komandi: echo "feature90" > f90.txt; git add f90.txt; git commit -m "Add feature90 base"



Krok 3. Повернутися у main і зробити коміт який симулює нові зміни.

Komandi: git switch main; echo "new main change" > main90.txt; git add main90.txt; git commit -m "Main progress for 90"



Krok 4. Повернутися у feature90 і спробувати підтягнути main через merge.

Komandi: git switch feature90; git merge main -m "Merge main into feature90"



Krok 5. Переглянути log з графом.

Komanda: git log --oneline --graph --decorate -n 5

Poyasnennya: видно merge коміт у історії feature90.



Krok 6. Скинути гілку до стану перед merge для експерименту з rebase.

Komanda: git reset --hard HEAD~1



Krok 7. Виконати rebase feature90 на main.

Komanda: git rebase main

Poyasnennya: коміт фічі тепер поверх актуального main без merge коміту.



Krok 8. Знову переглянути log.

Komanda: git log --oneline --graph --decorate -n 5



Krok 9. Занотувати коли допустимо робити rebase фічі, а коли потрібно зберігати merge коміти для історії.



Krok 10. Mini zvit.

Zavdannya: опиши як би ти організував оновлення фіч гілок на довготривалих проєктах.