Prompt file imported from Markiian1414/apks-lab1 (
.github/prompts/git-init.prompt.md). Copyright stays with the author.
Призначення
Підготуй наявний Git-репозиторій до безпечної роботи агента: перевір стан репозиторію, переконайся в наявності потрібних правил ігнорування та покажи поточний стан робочого дерева.
Передумови
- Поточний каталог є коренем проєкту.
- Git встановлено та доступний у PATH.
- Репозиторій уже ініціалізовано.
Дії
Виконуй дії послідовно:
-
Перевір, що поточний каталог є Git-репозиторієм, командою:
git rev-parse --is-inside-work-treeЯкщо команда не підтверджує Git-репозиторій, негайно зупинись і повідом про це. Не виконуй
git initбез явного дозволу користувача. -
Покажи поточну гілку за допомогою відповідної Git-команди, наприклад:
git branch --show-current -
Перевір
.gitignore. Якщо файл відсутній, створи його з такими записами:node_modules/ dist/ build/ coverage/ .env logs/ *.log .DS_StoreЯкщо
.gitignoreуже існує, додай лише відсутні записи з цього списку. Не додавай дублікати, не видаляй наявні правила та не змінюй інший вміст без потреби. -
Покажи короткий стан робочого дерева:
git status --short -
Перевір
.gitattributes. Якщо файл відсутній, створи його з такими рядками:* text=auto *.sh text eol=lf *.bat text eol=crlfЯкщо
.gitattributesуже існує, додай лише відсутні рядки без дублів і не видаляй наявні правила.
Очікувані файли
.gitignore— створений лише за відсутності або доповнений лише відсутніми правилами..gitattributes— створений лише за відсутності або доповнений лише відсутніми правилами.
Команди перевірки
Виконай і перевір результати таких команд:
git rev-parse --is-inside-work-tree
git check-ignore dist node_modules
Перша команда має підтвердити, що каталог належить до Git-репозиторію. Друга має показати, що dist і node_modules ігноруються правилами .gitignore.
Повідомлення про помилки
- Якщо поточний каталог не є Git-репозиторієм, зупинись і повідом:
Поточний каталог не є Git-репозиторієм. Виконайте git init лише після явного дозволу.Не виконуйgit init. - Якщо Git не встановлено або команда
gitнедоступна, зупинись і повідом:Git не встановлено або недоступний у PATH.Не продовжуй зміни. - Якщо не вдається прочитати або змінити
.gitignore, покажи точну причину та зупинись. Не маскуй помилку успішним результатом.
Ідемпотентність
Повторний запуск має бути безпечним: не дублюй записи в .gitignore, не видаляй наявні правила та не змінюй файли, якщо всі необхідні записи вже присутні. Не створюй жодних інших файлів.
Заборонено
- видаляти файли;
- виконувати
git push; - виконувати
git reset --hard; - автоматично створювати коміти;
- виконувати
git initбез явного дозволу користувача.
