1
0
mirror of https://github.com/Untru/gitmanager.git synced 2025-08-11 21:46:59 +02:00

Merge pull request #62 from Untru/docs/01

Изменения от Миши
This commit is contained in:
Pavel
2025-08-03 22:05:04 +03:00
committed by GitHub

View File

@@ -1,18 +1,17 @@
## GitManager
Что это и зачем?
# GitManager
Изначально была цель дать пользователю простой интерфейс для работы с 1с по методологии Git Flow.
Решение построено на БСП.
## Что это и зачем?
Решение представляет из себя 3 компонента:
Основная цель - дать пользователю простой и удобный интерфейс для работы с кодом 1С по методологии Git Flow. GitManager полностью берет на себя всё взаимодействие с репозиториями Git, организует ведение задач в разных ветках, автоматизирует сборку и разборку конфигураций 1С из исходников.
Решение построено на БСП и состоит из 3 компонентов:
* GitManager
* GitAgent (Опционально)
* Cli приложение (https://github.com/Untru/pivo-cli)
GitManager и GitAgent Это одна конфигурация. Идея сделать GitAgent родилась из-за того что по сети сборка и разборка исходников работает очень долго, по этому основная база отправляет команды в GitAgent И он уже запускает скрипты. Работать можно и без GitAgent, для этого надо установить константе СтратегияЗапускаСкрипта - CMD
GitManager и GitAgent это одна конфигурация, которую можно продублировать если базы расположены на разных серверах. Идея сделать GitAgent родилась из-за того, что по сети сборка и разборка исходников работает очень долго. Поэтому основная база, на которую подключен GitManager, отправляет команды в GitAgent, а он уже запускает скрипты. Работать возможно и без GitAgent, для этого надо установить константе `СтратегияЗапускаСкрипта` значение `CMD`
Общая схема работы:
@@ -93,47 +92,47 @@ del "%TEMP_FILE%"
echo База данных "%DB_NAME%" успешно создана и добавлена в список баз.
pause
```
Запусить и наслаждаться
Запустить и наслаждаться
</details>
Для удобста старта работ мы разработали "Начальный помошник", Управление разработкой - > Запуск.
Советую пройтись по всем шагам по очереди и заодно изучить структуру объектов.
Разработанный "Начальный помощник" (Управление разработкой -> Запуск) позволяет легко начать использование нашей программы.
Советую пройтись по всем шагам и, заодно, изучить структуру объектов. В нём предусмотренны: заполнение пользователей, создание проекта, добавление баз и установка oscript.
<img src="images/image-7.png" width="600" alt="Начальный помощник">
<img src="images/image-8.png" width="600" alt="Настройки помощника">
Предусмотренно заполнение пользователей/создание проекта добавление баз и установка oscript
<details>
<summary><strong> Если хотим все заполнять сами </strong></summary>
Необходимо выполнить следующие действия:
1. Cоздать пользователя с правами "Администратор"
Для начала работы необходимо создать пользователя с правами "Администратор", далее необходимо заполнить
Настройки пользователя:
<img src="images/image-1.png" width="600" alt="Настройки пользователя">
Обязательно необходимо заполнить Проект и токен от внешнего репозитория и так же почту пользователя
<img src="images/image-2.png" width="600" alt="Настройки пользователя">
2. Создать и заполнить Проект
Проект
Пример заполнения основных полей
<img src="images/image-3.png" width="600" alt="Проект">
После заполнения базы необходимо создать репозиторий по кнопке
3. Заполнить "Настройки пользователя". Обязательно необходимо указать Проект, токен от внешнего репозитория, а так же почту пользователя
<img src="images/image-2.png" width="600" alt="Настройки пользователя">
4. Заполнить настройки базы
5. Создать репозиторий, нажав на соответствующую кнопку
<img src="images/image-4.png" width="600" alt="Создание репозитория">
Для работы с гитхаб необходимо установить
6. Проверить, что у службы под которой запущена 1С есть права на расшаренную папку
[GitHub CLI](https://cli.github.com/)
У службы под которой запужена 1с должны быть права на шару папки
<img src="images/image-5.png" width="600" alt="Права доступа">
</details>
Необходимо запустить RAC как службу
Сделать это можно с помощью скрипта
Необходимо запустить RAC как службу, для этого есть свой скрипт
<details>
<summary><strong> Скрипт запуска скрапта добавления службы RAS </strong></summary>
<summary><strong> Скрипт добавления службы RAS </strong></summary>
``` bat
@echo off
@@ -150,37 +149,43 @@ sc stop %SrvcName%
sc delete %SrvcName%
sc create %SrvcName% binPath= %BinPath% start= auto obj= %SrvUserName% password= %SrvUserPwd% displayname= %Desctiption%
```
</details>
Для работы с гитхаб необходимо установить [GitHub CLI](https://cli.github.com/)
## Процесс работы
Каждой базе должнга соответствовать своя папка, подключенная к репозиторию.
Это проверить можно по наличию кнопки создания репозитория:
Каждой базе должна соответствовать своя папка, подключенная к репозиторию. Это можно проверить по наличию кнопки создания репозитория
![alt text](images/image-11.png)
### Создаем задачу
Важно, с системе получние настроек для задач.
![alt text](images/image-10.png)
Тут есть 3 варианта:
* Новая задача - создается новая ветка из ветки Develop
* HotFix к задаче - создается новая задача к задаче по ветке main/master, создает новую задачу к текущей
* HotFix новая задача - требует наличие задачи в таск трекере
* HotFix к задаче - создается новая ветка для задачи из ветки main/master, создает новую задачу к текущей
* HotFix новая задача - ??? требует наличие задачи в таск трекере
В результате задача должна появиться в списке, прошу обратить внимание на кнопки:
![alt text](images/image-13.png)
### Таск трекеры
Сейчас поддерживается 2 таск трекера
* 1С (только простая загрузка задач)
Передаем параметр - номер задачи
#### 1С (только простая загрузка задач)
Передаем параметр - номер задачи
```curl
curl --location 'https:/Путь К Базе/hs/tasks/task?id=000000002'
```
На входе мы ожидаем JSON
В ответ мы ожидаем получить JSON
```json
{
@@ -194,25 +199,23 @@ curl --location 'https:/Путь К Базе/hs/tasks/task?id=000000002'
"Очередь":
}
```
* Битрикс
#### Битрикс
Задача должна появиться в списке, прошу обратить внимание на кнопки:
![alt text](images/image-13.png)
### Переходим на ветку
Во время перехода папка базы репозитория переключается на выбранную в списке ветку задачи, далее происходит загрузка в базу:
Во время перехода, репозиториий базы переключается на выбранную в списке ветку задачи, далее происходит загрузка в базу:
* Основной конфигурации, если стоит галочка
![alt text](images/image-12.png)
* Загрузка расширений указанных в задаче
* Компилирование внешних обработок и помещение их в папку проекта.
\Repositories\ИмяБазы\build\epf
* Компилирование внешних обработок и помещение их в папку проекта. `\Repositories\ИмяБазы\build\epf`
### Зафиксировать изменения
Разбор объектов указанных в задаче на исходники (Конфигурация и расширения).
Разбор внешних обработок/отчетов происходит из папки
build\epf
Разбор внешних обработок/отчетов происходит из папки `build\epf`
### Создание мердж реквеста
В случае если это GITHUB - необходим GITHUB-CLI
@@ -227,20 +230,21 @@ build\epf
### Получение расширенных логов
Для вывода логов от 1commands (Блиблиотека запуска команд https://github.com/artbear/1commands)
Мы можем зададать переменную окружения
Мы можем задать переменную окружения
``` bat
set LOGOS_CONFIG=logger.oscript.lib.commands=DEBUG;
```
Или добавить команды которые будет запускаться перед основными
Или добавить команды, которые будут запускаться перед основными
<img src="images/image-9.png" width="600" alt="Запуск команд">
# ВАЖНО
Так как инзначально инструмент разрабатывался для нужд компании и подгонялся под требования, некоторый функционал не оттустирован в парадигме универсальности.
Так как инзначально инструмент разрабатывался для нужд компании и подгонялся под внутренние требования, некоторый функционал не оттестирован в парадигме универсальности.
Если вы захотите развернуть инструмент у себя и что-то не получается - смело пишите. Обращайтесь за помощью, любые ваши вопросы помогут дописать руководство и поправить найденные замечания.
Так же всячески приветствуются issues.
Так же, всячески приветствуются issues.
Использование опенсорс библиотек