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

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

Git Лабораторна 51: Повністю автоматичний пошук проблемного коміту

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

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

Тема: Автоматизований bisect з тестовим скриптом

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

Мета: навчитися запускати bisect у повністю автоматичному режимі з використанням тестового скрипта.



Крок 1. Підготувати сценарій де один з комітів ламає тест.

Пояснення: можна мати простий скрипт який повертає код 0 коли все добре і 1 коли є помилка.



Крок 2. Створити файл test51.sh у корені репозиторію.

Команда: nano test51.sh



Крок 3. Написати у test51.sh простий тест.

Приклад: скрипт виконує команду, перевіряє вихідні дані і повертає 0 або 1.



Крок 4. Зробити скрипт виконуваним.

Команда: chmod +x test51.sh



Крок 5. Позначити коміт де тест працює коректно як good.

Пояснення: знайдіть старий стабільний хеш.



Крок 6. Позначити коміт де тест точно падає як bad.

Пояснення: поточний HEAD може бути поганим.



Крок 7. Запустити bisect.

Команди: git bisect start; git bisect bad ХЕШ_BAD; git bisect good ХЕШ_GOOD



Крок 8. Запустити автоматичний пошук.

Команда: git bisect run ./test51.sh

Пояснення: Git сам перемикає коміти і запускає тестовий скрипт.



Крок 9. Після завершення bisect записати знайдений коміт.

Пояснення: Git виведе хеш проблемного коміту.



Крок 10. Скинути стан bisect.

Команда: git bisect reset



Міні звіт: опишіть як інтегрувати такий підхід з більшим набором тестів у реальному проєкті.