RE: Как настроить локальную работу с Git для EDT и GitКонвертера без облака?

#34474
bot_avaOdin — Одинэсник
Участник

    Для организации локальной работы с Git в связке с EDT и GitКонвертером без использования облачных сервисов (GitLab, GitHub, Bitbucket) нужно развернуть собственный локальный Git-сервер и настроить взаимодействие с ним. Ниже подробный план и рекомендации.

    ### 1. Разворачивание локального Git-сервера

    #### Варианты:

    — **Простой bare-репозиторий на файловом сервере или локальной машине**
    — **Git-сервер на базе SSH (OpenSSH)**
    — **Полноценный Git-сервер с веб-интерфейсом (GitLab CE, Gitea, или аналог)**

    #### 1.1 Bare-репозиторий на локальном диске или сетевом ресурсе

    — Создайте пустой bare-репозиторий (без рабочей копии) для централизованного хранения:

    mkdir /srv/git/myproject.git
    cd /srv/git/myproject.git
    git init --bare
    

    — Доступ к репозиторию можно организовать через сетевой диск (например, SMB) или локально.

    — В EDT и GitКонвертере указывайте путь к этому репозиторию как `file:///srv/git/myproject.git` или через сетевой путь.

    **Минусы:** нет управления пользователями, нет веб-интерфейса, неудобно для командной работы.

    #### 1.2 Git-сервер через SSH

    — На сервере (Windows или Linux) установите OpenSSH-сервер.

    — Создайте пользователя для работы с Git.

    — Создайте bare-репозиторий, как в пункте 1.1.

    — Настройте SSH-доступ к серверу.

    — В EDT и GitКонвертере укажите SSH-адрес репозитория, например:

    ssh://gituser@server_ip:/srv/git/myproject.git
    

    — Для удобства настройте SSH-ключи (безпарольный доступ).

    #### 1.3 Полноценный локальный Git-сервер с веб-интерфейсом

    — Установите **GitLab CE** (Community Edition), **Gitea** или **GitBucket** на локальный сервер.

    — Это даст удобный веб-интерфейс, управление пользователями, права доступа, CI/CD и т.п.

    — После установки создайте проект, получите SSH или HTTPS URL.

    — В EDT и GitКонвертере используйте этот URL.

    — Пример установки Gitea (легковесный):

    — Скачать бинарник с https://gitea.io/en-us/

    — Запустить, пройти веб-магию установки.

    — Создать репозиторий.

    ### 2. Настройка EDT для работы с локальным Git

    — В EDT в настройках проекта укажите URL локального репозитория (SSH или file://).

    — Если SSH, настройте SSH-ключи в системе и в EDT.

    — Используйте встроенный Git-интерфейс EDT для коммитов, пушей, пулов.

    — При необходимости настройте ветки, слияния и т.д.

    ### 3. Настройка GitКонвертера для работы с локальным Git

    — В конфигурации GitКонвертера укажите путь к локальному репозиторию (локальный путь или SSH URL).

    — Настройте SSH-ключи, если используете SSH.

    — Используйте команды GitКонвертера для выгрузки/загрузки кода из 1С в Git.

    — Для автоматизации можно использовать bat-скрипты, которые вызывают GitКонвертер и git-команды.

    ### 4. Рекомендации по SSH-ключам и безопасности

    — Создайте SSH-ключи на клиентской машине:

    ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
    

    — Добавьте публичный ключ в `~/.ssh/authorized_keys` на сервере.

    — Проверьте подключение:

    ssh gituser@server_ip
    

    — В EDT и GitКонвертере используйте приватный ключ.

    ### 5. Пример минимальной настройки bare-репозитория и подключения

    # На сервере
    mkdir -p /srv/git/myproject.git
    cd /srv/git/myproject.git
    git init --bare
    
    # На клиенте
    git clone ssh://gituser@server_ip:/srv/git/myproject.git
    cd myproject
    # Добавляете файлы, коммитите, пушите
    git add .
    git commit -m "Initial commit"
    git push origin master
    

    В EDT укажите этот SSH URL в настройках Git.

    ### 6. Полезные ссылки и инструменты

    — GitКонвертер: https://github.com/1C-Company/GitConverter/tree/develop
    — Gitsync: https://github.com/oscript-library/gitsync
    — Установка GitLab CE: https://about.gitlab.com/install/
    — Gitea: https://gitea.io/en-us/
    — Настройка SSH на Windows: https://agung-setiawan.com/git-github-generating-ssh-keys-on-windows/

    ### Итог

    Для локальной работы с Git в EDT и GitКонвертере без облака:

    — Разверните локальный Git-сервер (bare-репозиторий, SSH-сервер или GitLab/Gitea).
    — Настройте SSH-доступ и ключи.
    — В EDT и GitКонвертере укажите локальный SSH или файловый путь к репозиторию.
    — Используйте стандартные git-команды и возможности EDT/GitКонвертера для работы с кодом.

    Это позволит полноценно работать с Git без зависимости от облачных сервисов.

    Рекомендую посмотреть здесь:
    https://infostart.ru/1c/articles/1127356/
    https://github.com/1C-Company/GitConverter
    https://serveradmin.ru/ustanovka-i-nastroyka-gitlab/

    База знаний 1С