Git Workflow
Назначение
Git history в Pin используется как инженерный audit trail. Commit должен быть маленьким, осознанным и связанным с завершенным этапом работы.
Инициализация Репозитория
git init
git status --short --branch
В root должны быть .gitignore и .gitattributes для .NET, C#, React, Vite, TypeScript, Docker, local runtime artifacts, secrets и generated files.
Ежедневный Flow
Перед началом этапа:
git status --short --branch
git fetch --all --prune
Во время работы:
- держи документацию и реализацию в одном этапе, если они описывают одно поведение;
- используй
git mvдля переименований и перемещений; - не смешивай unrelated changes в одном commit;
- не коммить secrets,
.env, dependency folders, build outputs; - после появления remote работай в feature branch.
Перед commit:
git status --short --branch
git diff
git add <intentional-paths>
git diff --cached
git commit -m "<type>(<scope>): <summary>"
Branch Naming
feat/<scope>— продуктовая функциональность.fix/<scope>— исправление bug.docs/<scope>— документация.chore/<scope>— обслуживание.refactor/<scope>— refactor без изменения поведения.test/<scope>— только tests.
Commit Style
Сообщение коммита пишется на русском, осмысленно и без служебного мусора (не «тесты зелёные»,
«подтверждено на API» и т.п.). Префикс conventional-commit (feat/fix/docs/refactor/chore/
test + scope) допустим, но summary — на русском и по сути изменения. Полные правила —
git-commit-rules.md.
Примеры:
docs: обновить правила документацииfeat(employees): команда создания сотрудника с контактамиfix(pin): корректный расчёт формул для свежих записей
Запрещенные Действия
Без явной просьбы пользователя нельзя выполнять:
git reset --hard;git clean -fd;- forced checkout;
- rewrite published history;
- удаление чужих изменений.
Перед Финальным Ответом
Если задача включала изменения файлов, проверь:
git status --short --branch
Если git еще не инициализирован, просто укажи это в финальном ответе.
Обратные ссылки
Автоссылки: где используется этот документ.
- git-commit-rules.md (1): Правила Сообщений Коммитов