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.
