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

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

Git Лабораторна 41: Базове використання .gitattributes

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

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

Тема: Git attributes: переведення рядків, двійкові файли та власні diff драйвери

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

Мета: навчитися керувати тим як Git трактує різні типи файлів через .gitattributes.



Крок 1. Перейти до репозиторію.

Команда: cd ~/git_lab1



Крок 2. Створити або відкрити файл .gitattributes.

Команда: nano .gitattributes



Крок 3. Додати правила для текстових файлів з нормалізацією кінців рядків.

Приклад вмісту:

*.txt text eol=lf

Пояснення: Git буде зберігати такі файли з однаковими кінцями рядків.



Крок 4. Позначити двійкові файли щоб Git не намагався показувати diff.

Приклад рядка:

*.png binary

Пояснення: зменшує шум у diff та log.



Крок 5. Налаштувати власний diff драйвер для певного типу файлів.

Приклад рядка:

*.conf diff=confstyle

Пояснення: пізніше можна налаштувати драйвер confstyle у конфігу.



Крок 6. Зберегти .gitattributes і додати його у репозиторій.

Команди: git add .gitattributes; git commit -m "Configure basic gitattributes"



Крок 7. Перевірити як Git показує diff для текстового файла з eol=lf.

Пояснення: змініть *.txt файл, зробіть git diff і зверніть увагу на відсутність зайвих відмінностей через рядки.



Крок 8. Спробувати показати diff для png файла.

Команда: git diff HEAD~1 -- some.png 2>/dev/null || echo "двійковий файл не показується як текст"

Пояснення: Git повідомить що файл двійковий.



Крок 9. У глобальному конфігу додати опис власного diff драйвера.

Команда: git config --global diff.confstyle.textconv "cat"

Пояснення: для реальних сценаріїв тут можна вказати спеціальний скрипт.



Крок 10. Міні звіт.

Завдання: запишіть які типи файлів у ваших проєктах потребують окремих правил у .gitattributes.