L2 Открытый урок · Новичок

L2.6. Терминал, окружение, Git

Команды терминала, виртуальное окружение, ключи API в переменных окружения и минимум Git. Практикум: репозиторий с README.

Объём
4 урока · 10 часов
Компетенции
PROG-02·F, PROG-04·F

Терминал

Команда (Linux/macOS, Git Bash) Что делает
pwd где я
ls что в папке
cd папка, cd .. перейти, на уровень вверх
mkdir имя создать папку
python script.py запустить скрипт
команда > файл.txt вывод в файл
команда1 \| команда2 вывод одной команды — на вход другой

Путь — адрес файла: абсолютный (/home/anna/project/note.txt) или относительно текущей папки (project/note.txt).

Виртуальное окружение и пакеты

Каждому проекту — свой набор библиотек, чтобы проекты не мешали друг другу:

python -m venv .venv
source .venv/bin/activate          # Windows: .venv\Scripts\activate
pip install requests
pip freeze > requirements.txt      # записать версии

Переменные окружения и секреты

Ключи API, пароли и токены хранят в переменных окружения, а не в коде:

export ANTHROPIC_API_KEY="..."     # Windows PowerShell: $env:ANTHROPIC_API_KEY="..."
import os
key = os.environ.get("ANTHROPIC_API_KEY")   # None, если не задан

Ключ в коде или в репозитории — критическая ошибка CE-01. Если ключ хоть раз попал в коммит, считайте его утёкшим: отзовите и выпустите новый. Удаление в следующем коммите не помогает — история Git его хранит.

Git: минимум

git init
git add README.md main.py
git commit -m "Первая версия: подсчёт стоимости корзины"
git remote add origin <адрес репозитория>
git push -u origin main

.gitignore — список того, что не попадает в репозиторий: .venv/, .env, __pycache__/, данные с личной информацией.

Практикум: репозиторий

Репозиторий с задачами L2.4–L2.5: README.md (что это и как запустить), .gitignore, 3+ осмысленных коммита, файл requirements.txt. Проверка: однокурсник клонирует и запускает по README.

Диагностика уровня

С какого уровня начать?

Оставьте контакты — свяжемся, зададим несколько вопросов об опыте и целях и подскажем уровень входа: с нуля, с середины программы или через Fast Track для разработчиков.

Или напишите: hello@superint.ru