# Настройка Git для работы под пользователем root ## Текущая конфигурация Git уже настроен для работы под пользователем root: ```bash git config --global user.name "root" git config --global user.email "root@localhost" ``` ## Настройка аутентификации для GitLab ### Вариант 1: SSH ключи (рекомендуется) 1. **Проверьте существующие SSH ключи:** ```bash ls -la ~/.ssh/ ``` 2. **Если ключей нет, создайте новый:** ```bash ssh-keygen -t ed25519 -C "root@localhost" ``` 3. **Добавьте публичный ключ в GitLab:** ```bash cat ~/.ssh/id_ed25519.pub ``` Скопируйте содержимое и добавьте в GitLab: Settings → SSH Keys 4. **Настройте SSH для GitLab:** ```bash # Добавьте в ~/.ssh/config Host gitlab.konturai.kz HostName gitlab.konturai.kz User git IdentityFile ~/.ssh/id_ed25519 ``` 5. **Измените URL репозитория на SSH:** ```bash git remote set-url origin git@gitlab.konturai.kz:web/marketing.git ``` ### Вариант 2: Personal Access Token 1. **Создайте Personal Access Token в GitLab:** - Перейдите в GitLab: User Settings → Access Tokens - Создайте токен с правами: `read_repository`, `write_repository` 2. **Используйте токен для аутентификации:** ```bash # При push Git запросит логин и пароль # Логин: ваш_username # Пароль: personal_access_token git push origin main ``` 3. **Или настройте credential helper:** ```bash git config --global credential.helper store ``` ### Вариант 3: Настройка через переменные окружения ```bash # Добавьте в ~/.bashrc или ~/.zshrc export GIT_AUTHOR_NAME="root" export GIT_AUTHOR_EMAIL="root@localhost" export GIT_COMMITTER_NAME="root" export GIT_COMMITTER_EMAIL="root@localhost" ``` ## Команды для работы с Git ### Основные команды ```bash # Проверить статус git status # Добавить файлы git add . # Создать коммит git commit -m "Commit message" # Отправить изменения git push origin main # Получить изменения git pull origin main ``` ### Работа с Docker файлами ```bash # Добавить Docker файлы git add Dockerfile docker-compose.yml nginx.conf .dockerignore DOCKER.md # Создать коммит git commit -m "Add Docker configuration" # Отправить в репозиторий git push origin main ``` ## Проверка конфигурации ```bash # Проверить текущую конфигурацию git config --global --list # Проверить удаленные репозитории git remote -v # Проверить SSH подключение ssh -T git@gitlab.konturai.kz ``` ## Решение проблем ### Проблема: Permission denied ```bash # Проверить права доступа к SSH ключам chmod 600 ~/.ssh/id_ed25519 chmod 644 ~/.ssh/id_ed25519.pub ``` ### Проблема: Authentication failed ```bash # Очистить кэш credentials git config --global --unset credential.helper git config --global credential.helper store ``` ### Проблема: SSL certificate ```bash # Отключить проверку SSL (не рекомендуется для продакшена) git config --global http.sslVerify false ``` ## Текущий статус - ✅ Git настроен под пользователя root - ✅ Docker файлы созданы и добавлены в репозиторий - ⚠️ Требуется настройка аутентификации для push в GitLab Для завершения настройки выберите один из вариантов аутентификации выше.