--- title: Инициализация системы description: Настройка репозитория, Git-хуки и конфигурация PATH. weight: 51 --- Общие модули требуют однократной инициализации на каждом хосте для создания связей путей и конфигураций на уровне репозитория. ## Скрипт `init.sh` {#init-script} Скрипт `init.sh`, расположенный в корне репозитория, является основным механизмом начальной загрузки. Он выполняет следующие критические задачи: 1. **Инициализация субмодулей**: Гарантирует наличие и актуальность репозитория [Commons](/root/glossary#commons). 2. **Конфигурация Git-хуков**: Направляет `core.hooksPath` на `.operator/shared/githooks` для обеспечения стандартизированных проверок перед коммитом. 3. **Регистрация безопасной директории (Safe Directory)**: Добавляет репозиторий в список `safe.directory` Git, что необходимо для операций, выполняемых разными пользователями (например, `root`, `adam`). 4. **Конфигурация Vim**: Связывает стандартизированный `.vimrc` как для текущего пользователя, так и для пользователя `root` для обеспечения единообразия при редактировании. 5. **Сохранение PATH**: Добавляет директорию `.operator/shared/scripts/run` в `~/.bashrc` пользователя, делая команду `root` доступной глобально. ## Git-хуки {#githooks} Root обеспечивает соблюдение стандартов через Git-хуки, хранящиеся в `.operator/shared/githooks/`. - **Pre-commit**: Проверяет, что все скрипты соответствуют соглашениям о пространствах имен и структуре. - **Commit-msg**: (Опционально) Обеспечивает соблюдение правил Conventional Commits, если это настроено. ## Конфигурация PATH {#path} Команда `root` — это обертка (wrapper), расположенная по адресу `.operator/shared/scripts/run/root`. Добавляя эту директорию в `PATH`, диспетчер можно вызывать из любой директории в системе; он автоматически определит корень репозитория на основе текущей рабочей директории или переменных окружения. ```bash # Пример добавления PATH вручную (выполняется автоматически скриптом init.sh) export PATH="$HOME/repo/.operator/shared/scripts/run:$PATH" ``` --- **See also:** - [Руководство: Начальная настройка хоста](/root/guides/installation) - [Справочник: Справочник ROOT_ API Reference](/root/reference/root-api)