Git и структура C++-проекта
Зачем нужен Git
Git хранит историю изменений и позволяет возвращаться к рабочим версиям, сравнивать изменения и работать параллельно. Начни с небольших логических коммитов, у каждого из которых понятное сообщение.
git initgit add .git commit -m "Add initial project"git statusgit log --onelineНе добавляй в репозиторий временные файлы сборки, IDE-кеши, исполняемые файлы и секреты. Для этого используй .gitignore.
Пример структуры
MyProject/ CMakeLists.txt README.md .gitignore include/ Math.h src/ Math.cpp main.cpp tests/Это не единственно верная структура, но она отделяет публичные заголовки, реализации и тесты.
Именование
Выбери единый стиль именования и придерживайся его во всём проекте. Названия типов, функций и переменных должны сообщать смысл. Избегай сокращений, которые понятны только автору.
Коммиты
Коммит должен описывать одну логическую порцию изменений. Перед коммитом проверь git diff, запусти сборку и подходящие тесты. Не добавляй автоматически все файлы, если не проверил, что именно изменилось.
README
В README полезно указать назначение проекта, требования, команды сборки, запуск тестов и пример использования. Это позволяет другому человеку собрать проект без догадок.
Итог
Git сохраняет историю, понятная структура упрощает навигацию, а README делает проект воспроизводимым. Эти привычки важны даже для небольших учебных программ.
