← До списку лабораторних по Git
Повний опис / сценарій лабораторної:
Meta: навчитися простежувати історію конкретної функції або блоку коду за допомогою git log -L. Krok 1. Вибрати файл з кількома функціями або блоками коду. Komanda: cd ~/git_lab1 && ls Krok 2. Відкрити файл і визначити діапазон рядків для аналізу. Poyasnennya: наприклад рядки з десятої по двадцяту. Krok 3. Виконати log -L для цього діапазону. Komanda: git log -L 10,20:ІМЯ_ФАЙЛУ Poyasnennya: Git покаже як змінювався цей блок у часі. Krok 4. Повторити log -L але за назвою функції якщо файл підтримує таку нотацію. Komanda: git log -L :імя_функції:ІМЯ_ФАЙЛУ Krok 5. Вивчити diff для однієї з версій цього блоку. Komanda: git show ХЕШ Krok 6. Порівняти підхід log -L з використанням blame для того самого фрагмента. Komanda: git blame ІМЯ_ФАЙЛУ | sed -n "10,20p" Krok 7. Занотувати які типи задач виграють від такого аналізу наприклад пошук регресій у певній функції. Krok 8. Спробувати log -L для іншого файлу де було багато refactor змін. Krok 9. Обговорити обмеження log -L наприклад для файлів де структура сильно змінилася. Krok 10. Mini zvit. Zavdannya: опиши як log -L допоможе пояснити історію складного алгоритму новому члену команди.