01.2
Модуль 1 · Технический минимум: читать, понимать, коммитить

Урок 2. Git: версионирование и первый коммит

Урок 2

Прямо сейчас: откройте PowerShell. Введите git --version. Видите номер версии? Git установлен. Если нет — скачайте с git-scm.com.

Зачем это L&D-специалисту

Все ваши AI-артефакты — промпты, схемы агентов, скрипты, датасеты для fine-tuning — живут в файлах. Git — это машина времени для этих файлов. Вы можете откатиться к любой версии, посмотреть, что изменилось, и не бояться «а вдруг я всё сломаю».

Без Git любая серьёзная работа с AI-инструментами превращается в кашу из файлов: финальная_версия.py, окончательная_v2.py, реально_последняя.py. Кто из них рабочий — непонятно. Git убирает этот хаос: у вас один файл и цепочка коммитов.

К концу этого урока вы создадите свой первый репозиторий, сделаете коммит, зальёте код на GitHub — и поймёте, почему разработчики не работают без этой системы.

Что такое Git

Git — это система контроля версий. Она записывает слепки всех изменений в ваших файлах. Каждый слепок называется коммит (commit). Вы можете в любой момент вернуться к любому коммиту, посмотреть, что изменилось, и даже разветвить историю.

Представьте, что вы пишете курсовую:

Без Git вы храните 4 файла: курсовая_v1.docx, курсовая_v2.docx... С Git у вас один файл и 4 коммита. Вы переключаетесь между ними одной командой.

Метафора. Git — как машина времени. Это Ctrl+Z, который работает через месяц. Или даже через год. Вы всегда можете вернуться к тому моменту, когда всё работало.

Репозиторий и основные понятия

Репозиторий (repo) — это папка, за которой Git следит. Внутри неё есть скрытая папка .git — там хранится вся история. Вы её не трогаете, Git сам с ней работает.

Основные понятия, без которых не разобраться:

У файла в Git три состояния:

Один git log — и вся история перед глазами. Без папок «финальная_версия_окончательная_v2».

GitHub — это не Git

Это самое частое заблуждение новичков. Git — программа на вашем компьютере. GitHub — сайт, где хранятся удалённые репозитории. Это как разница между редактором Word (у вас на компьютере) и облачным хранилищем Google Диск (в интернете).

Git работает локально: вы можете делать коммиты, создавать ветки, смотреть историю — всё без интернета. GitHub нужен для двух вещей: бэкапа (ваш код не пропадёт, если сломается ноутбук) и совместной работы (коллега может скачать ваш репозиторий и предложить изменения).

Можно работать без GitHub — только локально. GitHub нужен для бэкапа и совместной работы. Если вы единственный автор и у вас есть резервная копия — GitHub не обязателен. Но для портфолио и коллабораций — бесценен.

Git не даёт вам врать самому себе про «финальную версию»

Один git log --oneline — и вы видите кто, когда и зачем изменил каждую строчку. Никаких «я не помню, что я там меняла». Никаких «кажется, в среду всё работало». История — перед глазами. Прозрачность, которой не хватает в рабочей переписке.

Промежуточный итог

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

Практика

Упражнение 1. Проверка Git и настройка (10 мин)
  1. Откройте PowerShell. Проверьте: git --version
  2. Представьтесь Git (один раз, запомнит):
    git config --global user.name "Ваше Имя"
    git config --global user.email "ваша@почта.ru"
  3. Проверьте: git config --global --list
Упражнение 2. Первый репозиторий (15 мин)
  1. Создайте папку и перейдите в неё:
    mkdir C:\Users\ИмяПользователя\Desktop\my-first-repo
    cd C:\Users\ИмяПользователя\Desktop\my-first-repo
  2. Сделайте папку репозиторием: git init
  3. Git ответит: «Initialized empty Git repository in ...»
  4. Проверьте: git status — увидите «On branch main» и «nothing to commit»
Упражнение 3. Первый коммит (15 мин)
  1. Создайте файл: ni readme.md
  2. Откройте в редакторе и напишите:
    # my-first-repo
    
    Мой первый репозиторий. Учусь работать с Git.
  3. Сохраните. Проверьте: git status — файл «untracked»
  4. Добавьте в staging: git add readme.md
  5. Проверьте: git status — файл «staged» (зелёным)
  6. Сделайте коммит: git commit -m "Первый коммит: readme"
  7. Посмотрите историю: git log --oneline
Упражнение 4. Второй коммит (10 мин)
  1. Откройте readme.md и допишите:
    ## Как я учусь
    
    Прохожу курс L&D × AI. На этой неделе осваиваю Git.
  2. Сохраните. Проверьте: git status
  3. Посмотрите изменения: git diff readme.md — Git покажет добавленные строки
  4. Сохраните изменения:
    git add readme.md
    git commit -m "Добавил раздел Как я учусь"
  5. Посмотрите историю: git log --oneline — теперь два коммита
Упражнение 5. Возврат к предыдущей версии (10 мин)
  1. Посмотрите полную историю: git log
  2. Скопируйте хеш первого коммита (самый нижний)
  3. Вернитесь к нему: git checkout <хеш>
  4. Откройте readme.md — файл снова содержит только первую версию
  5. Вернитесь к последней версии: git checkout main
  6. Файл снова полный. Git работает как машина времени
Упражнение 6. Ветки (15 мин)
  1. Создайте ветку для эксперимента: git branch experiment
  2. Проверьте ветки: git branch — main выделена звёздочкой
  3. Переключитесь: git checkout experiment
  4. Откройте readme.md и допишите:
    ## Эксперимент
    
    Это изменение я делаю в отдельной ветке.
  5. Закоммитьте:
    git add .
    git commit -m "Эксперимент в отдельной ветке"
  6. Вернитесь в main: git checkout main — файл без экспериментальной строки
  7. Влейте эксперимент: git merge experiment
  8. Файл обновился. История: git log --oneline
Упражнение 7. Gitignore (10 мин)
  1. Создайте два файла:
    ni secret.txt
    ni notes.txt
  2. Запишите в secret.txt: «это секрет»
  3. Создайте .gitignore: ni .gitignore
  4. Откройте .gitignore и напишите: secret.txt
  5. Проверьте: git status — secret.txt исчез из списка
  6. Закоммитьте .gitignore:
    git add .gitignore
    git commit -m "Добавил gitignore, скрыл secret.txt"
Упражнение 8. GitHub: локальный → удалённый (25 мин)

Нужен аккаунт на GitHub. Если нет — зарегистрируйтесь на github.com (бесплатно).

  1. Зайдите на github.com, нажмите зелёную кнопку New
  2. Название: my-first-repo. Public. Не ставьте галочку «Add a README»
  3. Нажмите Create repository
  4. Скопируйте команду со страницы и выполните в PowerShell:
    git remote add origin https://github.com/ваш-логин/my-first-repo.git
  5. Проверьте: git remote -v
  6. Отправьте коммиты:
    git push -u origin main
  7. Для входа GitHub запросит логин и токен (не пароль!). Токен создаётся: GitHub → Settings → Developer settings → Personal access tokens → Tokens (classic) → Generate new token, галочка repo
  8. Обновите страницу репозитория на GitHub — увидите свои файлы и историю
Упражнение 9. Артефакт (10 мин)
  1. Перейдите в папку вашего основного проекта курса
  2. Создайте папку: mkdir career
  3. Сохраните лог коммитов: git log --oneline > career\git-demo.md
  4. Откройте файл и допишите в начало:
    # Git-демо: мой первый опыт
    
    **Дата:** [сегодня]
    **Что делала:** создала репозиторий, сделала несколько коммитов, поработала с ветками, отправила на GitHub.
    
    ## Лог коммитов
  5. Закоммитьте артефакт в основной проект

После практики

Чек-лист готовности

Артефакт урока

После урока в вашем проекте должна появиться структура:

ваш-проект/
├── career/
│   └── git-demo.md          # Лог коммитов + описание опыта
└── (my-first-repo на GitHub)  # Публичный репозиторий с историей

Челлендж на завтра

Сделайте ещё пару коммитов в свой основной проект — хотя бы по одному на каждый день. Git становится полезным, когда вы входите в привычку коммитить часто. Достаточно 5 минут: изменили строчку → git add . → git commit -m "описание". Завтра, послезавтра, через неделю. Через месяц вы не сможете представить работу без этого.

Что дальше

В следующем материале — API и чтение кода. Вы научитесь делать запросы к AI-моделям через терминал, читать документацию API и понимать, что происходит в чужом коде. А после Модуля 1 — Модуль 2: AI от промпта до продукта, где вы заглянете под капот LLM и соберёте своего первого агента.

Дополнительно (необязательно, но полезно)

Проверь себя

1. Что делает команда git init?

2. Что такое коммит?

3. Для чего нужен файл .gitignore?

4. Что происходит после git add . && git commit -m "..."?