====== Шпаргалка: Git и GitHub Pages (Развертывание) ====== **Автор:** Hallow / Sarcastic Saint **Назначение:** Данный документ — мой личный регламент по установке, настройке и использованию Git для публикации статических сайтов на GitHub Pages. Он служит "золотой" копией процедуры развертывания моей интерактивной визитной карточки ("Квест Сисадмина"). ===== 📝 Этап 1: Установка и настройка Git на Windows ===== Первый шаг — подготовка инструментария. Git for Windows — это не просто программа, а целый набор утилит, требующий правильной конфигурации для интеграции в мою рабочую среду. ==== 1.1. Инсталляция ==== * ✅ **Источник:** Установщик скачан с официального сайта: //[[https://git-scm.com/downloads/|git-scm.com]]// * ⚙️ **Ключевые параметры установки:** * **Редактор:** Notepad++ (выбран как внешний редактор по умолчанию для удобства). * **Имя ветки:** **main** (установлено по умолчанию для всех новых репозиториев, чтобы соответствовать стандарту GitHub). * **Переменные PATH:** Выбран рекомендованный вариант "**Git from the command line...**", чтобы команда //git// была доступна из любого терминала (PowerShell, CMD, Git Bash). * **Аутентификация:** Включен **Git Credential Manager** для безопасного кэширования учетных данных. ==== 1.2. Конфигурация пользователя ==== После установки необходимо "представиться" системе Git. Это обязательный шаг, без которого невозможно создавать коммиты. Команды выполняются в терминале один раз для всей системы. # Установка имени пользователя (публикуется в истории коммитов) git config --global user.name "Iso-Hallow" # Установка email (должен совпадать с email на GitHub) git config --global user.email "моя.почта@example.com" ===== 🚀 Этап 2: Процесс публикации проекта на GitHub Pages ===== Это основной рабочий процесс, от локальных файлов до публичного сайта. ==== 2.1. Подготовка на GitHub ==== 1. **Создание репозитория:** В аккаунте //Iso-Hallow// создается новый **публичный** репозиторий (например, //sysadmin-quest//). ==== 2.2. Локальная работа и отправка ==== Все команды выполняются в терминале **Git Bash**, открытом в корневой папке проекта. 1. **Инициализация:** Создание локального репозитория. git init 2. **Индексация:** Добавление всех файлов проекта в "область подготовки". Точка (//.//) означает "все файлы в текущей папке". git add . 3. **Коммит:** Фиксация изменений в локальной истории. Это создание "снимка" проекта. git commit -m "Initial release of Sysadmin Quest" 4. **Привязка к удаленному репозиторию:** Указание Git, куда отправлять файлы. git remote add origin https://github.com/Iso-Hallow/sysadmin-quest.git 5. **Отправка (Push):** Загрузка локальных коммитов на сервер GitHub. git push -u origin main ==== 2.3. Авторизация (2ФА и Personal Access Token) ==== ❗️ **Важный момент:** При первой отправке (//git push//) стандартный пароль от GitHub **не работает**, так как включена двухфакторная аутентификация (2ФА). * **Решение:** Вместо пароля используется **Personal Access Token (PAT)**. 1. Токен генерируется в настройках GitHub: //Developer settings -> Personal access tokens -> Tokens (classic)//. 2. Токену выдается минимально необходимое разрешение (scope): **repo**. 3. Сгенерированная строка (начинается с //ghp_...//) копируется и вставляется в поле для пароля в окне авторизации Git Credential Manager. ==== 2.4. Активация GitHub Pages ==== 1. В настройках репозитория на GitHub открывается вкладка **Pages**. 2. В качестве источника (Source) выбирается **Deploy from a branch**. 3. Выбирается ветка **main** и папка **/(root)**. 4. После сохранения GitHub автоматически разворачивает сайт. ===== 🏁 Результат ===== Проект становится доступен по адресу вида: **[[https://iso-hallow.github.io/имя-репозитория/]]** ===== 🔄 Обслуживание (Обновление сайта) ===== Процесс обновления сайта сведен к трем простым командам, которые выполняются в папке проекта после внесения изменений в файлы: git add . git commit -m "Краткое описание внесенных изменений" git push Сайт на GitHub Pages обновляется автоматически в течение 1-2 минут после //push//.