Прямо сейчас: откройте PowerShell. Введите git --version. Видите номер версии? Git установлен. Если нет — скачайте с git-scm.com.
Зачем это L&D-специалисту
Все ваши AI-артефакты — промпты, схемы агентов, скрипты, датасеты для fine-tuning — живут в файлах. Git — это машина времени для этих файлов. Вы можете откатиться к любой версии, посмотреть, что изменилось, и не бояться «а вдруг я всё сломаю».
Без Git любая серьёзная работа с AI-инструментами превращается в кашу из файлов: финальная_версия.py, окончательная_v2.py, реально_последняя.py. Кто из них рабочий — непонятно. Git убирает этот хаос: у вас один файл и цепочка коммитов.
К концу этого урока вы создадите свой первый репозиторий, сделаете коммит, зальёте код на GitHub — и поймёте, почему разработчики не работают без этой системы.
Что такое Git
Git — это система контроля версий. Она записывает слепки всех изменений в ваших файлах. Каждый слепок называется коммит (commit). Вы можете в любой момент вернуться к любому коммиту, посмотреть, что изменилось, и даже разветвить историю.
Представьте, что вы пишете курсовую:
- Версия 1: набросок
- Версия 2: добавили главу
- Версия 3: переписали введение
- Версия 4: поняли, что старое введение было лучше → вернулись к версии 2
Без Git вы храните 4 файла: курсовая_v1.docx, курсовая_v2.docx... С Git у вас один файл и 4 коммита. Вы переключаетесь между ними одной командой.
Метафора. Git — как машина времени. Это Ctrl+Z, который работает через месяц. Или даже через год. Вы всегда можете вернуться к тому моменту, когда всё работало.
Репозиторий и основные понятия
Репозиторий (repo) — это папка, за которой Git следит. Внутри неё есть скрытая папка .git — там хранится вся история. Вы её не трогаете, Git сам с ней работает.
Основные понятия, без которых не разобраться:
- commit (коммит) — сохранённый слепок всех файлов. У каждого коммита есть сообщение, автор, дата и уникальный хеш.
- ветка (branch) — отдельная линия разработки. По умолчанию —
main. Можно создать ветку для эксперимента, поработать в ней, а потом влить обратно.
- локальный репозиторий — на вашем компьютере.
- удалённый репозиторий (remote) — на GitHub. Бэкап + совместная работа.
- push — отправить ваши коммиты на GitHub.
- pull — скачать чужие коммиты с GitHub.
У файла в Git три состояния:
- Untracked — Git не знает про этот файл (вы его только создали).
- Staged (индексирован) — вы сказали Git: «этот файл хочу сохранить в следующем коммите» (
git add).
- Committed (сохранён) — вы сделали слепок (
git commit).
Один git log — и вся история перед глазами. Без папок «финальная_версия_окончательная_v2».
GitHub — это не Git
Это самое частое заблуждение новичков. Git — программа на вашем компьютере. GitHub — сайт, где хранятся удалённые репозитории. Это как разница между редактором Word (у вас на компьютере) и облачным хранилищем Google Диск (в интернете).
Git работает локально: вы можете делать коммиты, создавать ветки, смотреть историю — всё без интернета. GitHub нужен для двух вещей: бэкапа (ваш код не пропадёт, если сломается ноутбук) и совместной работы (коллега может скачать ваш репозиторий и предложить изменения).
Можно работать без GitHub — только локально. GitHub нужен для бэкапа и совместной работы. Если вы единственный автор и у вас есть резервная копия — GitHub не обязателен. Но для портфолио и коллабораций — бесценен.
Промежуточный итог
Untracked → git add → Staged → git commit → Committed → git push → GitHub. Вы знаете, что Git — это машина времени на вашем компьютере, а GitHub — облачное хранилище для бэкапа и коллаборации. Дальше — шпаргалка и практика.
Шпаргалка
| Действие |
Команда |
| Создать репозиторий в текущей папке |
git init |
| Проверить статус файлов |
git status |
| Добавить файл в staging |
git add имя_файла |
| Добавить все файлы |
git add . |
| Сделать коммит |
git commit -m "сообщение" |
| Посмотреть историю |
git log |
| Посмотреть историю (кратко) |
git log --oneline |
| Увидеть изменения |
git diff |
| Создать ветку |
git branch имя |
| Переключиться на ветку |
git checkout имя |
| Влить ветку в текущую |
git merge имя |
| Вернуться к коммиту по хешу |
git checkout хеш |
| Действие |
Команда |
| Представиться (имя) |
git config --global user.name "Ваше Имя" |
| Представиться (email) |
git config --global user.email "ваша@почта.ru" |
| Проверить настройки |
git config --global --list |
| Красивый лог (алиас) |
git config --global alias.lol "log --oneline --graph --all" |
| Действие |
Команда |
| Связать локальный репозиторий с удалённым |
git remote add origin https://github.com/логин/репо.git |
| Отправить коммиты на GitHub |
git push -u origin main |
| Забрать изменения с GitHub |
git pull |
| Посмотреть, с каким удалённым репозиторием связана папка |
git remote -v |
После практики
Чек-лист готовности
- ✓ Проверили Git:
git --version вернула номер
- ✓ Создали локальный репозиторий (
git init)
- ✓ Сделали минимум 2 коммита с разными сообщениями
- ✓ Посмотрели изменения через
git diff и git log
- ✓ Вернулись к предыдущей версии (
git checkout)
- ✓ Создали и слили ветку (
git branch, git merge)
- ✓ Настроили
.gitignore
- ✓ Создали репозиторий на GitHub и запушили коммиты (
git push)
- ✓ Создали артефакт
career/git-demo.md с логом коммитов
Артефакт урока
После урока в вашем проекте должна появиться структура:
ваш-проект/
├── career/
│ └── git-demo.md # Лог коммитов + описание опыта
└── (my-first-repo на GitHub) # Публичный репозиторий с историей
Челлендж на завтра
Сделайте ещё пару коммитов в свой основной проект — хотя бы по одному на каждый день. Git становится полезным, когда вы входите в привычку коммитить часто. Достаточно 5 минут: изменили строчку → git add . → git commit -m "описание". Завтра, послезавтра, через неделю. Через месяц вы не сможете представить работу без этого.
Что дальше
В следующем материале — API и чтение кода. Вы научитесь делать запросы к AI-моделям через терминал, читать документацию API и понимать, что происходит в чужом коде. А после Модуля 1 — Модуль 2: AI от промпта до продукта, где вы заглянете под капот LLM и соберёте своего первого агента.
Дополнительно (необязательно, но полезно)
git log --graph — показывает историю в виде графа (наглядно видны ветки)
git commit --amend — исправить сообщение последнего коммита (если ошиблись)
git reset HEAD readme.md — убрать файл из staging (если случайно добавили)
- Сделайте алиас для красивого лога:
git config --global alias.lol "log --oneline --graph --all" — и команда git lol заработает
- Прочитайте первые 3 раздела книги Pro Git на русском: https://git-scm.com/book/ru/v2