← До списку лабораторних по Git
Повний опис / сценарій лабораторної:
Meta: навчитися керувати порогом схожості для виявлення перейменувань і переміщень файлів у Git. Krok 1. Створити файл з певним вмістом. Komandy: cd ~/git_lab1; echo "line one" > rename66.txt; echo "line two" >> rename66.txt; git add rename66.txt; git commit -m "Add rename66 base file" Krok 2. Перейменувати файл і трохи його змінити. Komandy: mv rename66.txt rename66_new.txt; echo "line three" >> rename66_new.txt; git add rename66_new.txt; git rm rename66.txt; git commit -m "Rename and modify file 66" Krok 3. Подивитися log з виявленням перейменувань за замовчуванням. Komanda: git log -M --stat -n 1 Poyasnennya: Git сам знаходить перейменування за стандартним порогом. Krok 4. Перевірити diff з явним параметром M. Komanda: git diff -M HEAD~1 HEAD Krok 5. Знизити поріг схожості до 30 відсотків. Komanda: git diff -M30 HEAD~1 HEAD Poyasnennya: Git простіше вважає зміни перейменуванням. Krok 6. Підвищити поріг до 90 відсотків. Komanda: git diff -M90 HEAD~1 HEAD Poyasnennya: у цьому випадку Git може вважати файл новим а не перейменованим. Krok 7. Перевірити як працює опція C для виявлення копій. Komanda: git diff -C HEAD~1 HEAD Poyasnennya: Git шукає схожі блоки між файлами. Krok 8. Уявити реальний репозиторій де масові перейменування можуть засмічувати diff і log. Poyasnennya: наприклад перейменування просторів імен або каталогів. Krok 9. Занотувати рекомендовані параметри для таких комітів при перегляді diff. Krok 10. Mini zvit. Zavdannya: опиши як ти налаштуєш параметри M і C для аналізу великого refactor коміту.