You've already forked gitmanager
mirror of
https://github.com/Untru/gitmanager.git
synced 2025-08-09 21:37:16 +02:00
Изменения от Миши
This commit is contained in:
98
README.md
98
README.md
@@ -1,18 +1,17 @@
|
|||||||
## GitManager
|
# GitManager
|
||||||
Что это и зачем?
|
|
||||||
|
|
||||||
Изначально была цель дать пользователю простой интерфейс для работы с 1с по методологии Git Flow.
|
## Что это и зачем?
|
||||||
Решение построено на БСП.
|
|
||||||
|
|
||||||
Решение представляет из себя 3 компонента:
|
Основная цель - дать пользователю простой и удобный интерфейс для работы с кодом 1С по методологии Git Flow. GitManager полностью берет на себя всё взаимодействие с репозиториями Git, организует ведение задач в разных ветках, автоматизирует сборку и разборку конфигураций 1С из исходников.
|
||||||
|
|
||||||
|
|
||||||
|
Решение построено на БСП и состоит из 3 компонентов:
|
||||||
* GitManager
|
* GitManager
|
||||||
* GitAgent (Опционально)
|
* GitAgent (Опционально)
|
||||||
* Cli приложение (https://github.com/Untru/pivo-cli)
|
* 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%" успешно создана и добавлена в список баз.
|
echo База данных "%DB_NAME%" успешно создана и добавлена в список баз.
|
||||||
pause
|
pause
|
||||||
```
|
```
|
||||||
Запусить и наслаждаться
|
Запустить и наслаждаться
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
Для удобста старта работ мы разработали "Начальный помошник", Управление разработкой - > Запуск.
|
Разработанный "Начальный помощник" (Управление разработкой -> Запуск) позволяет легко начать использование нашей программы.
|
||||||
Советую пройтись по всем шагам по очереди и заодно изучить структуру объектов.
|
Советую пройтись по всем шагам и, заодно, изучить структуру объектов. В нём предусмотренны: заполнение пользователей, создание проекта, добавление баз и установка oscript.
|
||||||
|
|
||||||
<img src="images/image-7.png" width="600" alt="Начальный помощник">
|
<img src="images/image-7.png" width="600" alt="Начальный помощник">
|
||||||
|
|
||||||
<img src="images/image-8.png" width="600" alt="Настройки помощника">
|
<img src="images/image-8.png" width="600" alt="Настройки помощника">
|
||||||
|
|
||||||
Предусмотренно заполнение пользователей/создание проекта добавление баз и установка oscript
|
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary><strong> Если хотим все заполнять сами </strong></summary>
|
<summary><strong> Если хотим все заполнять сами </strong></summary>
|
||||||
|
Необходимо выполнить следующие действия:
|
||||||
|
|
||||||
|
1. Cоздать пользователя с правами "Администратор"
|
||||||
|
|
||||||
Для начала работы необходимо создать пользователя с правами "Администратор", далее необходимо заполнить
|
|
||||||
Настройки пользователя:
|
|
||||||
<img src="images/image-1.png" width="600" alt="Настройки пользователя">
|
<img src="images/image-1.png" width="600" alt="Настройки пользователя">
|
||||||
|
|
||||||
Обязательно необходимо заполнить Проект и токен от внешнего репозитория и так же почту пользователя
|
2. Создать и заполнить Проект
|
||||||
<img src="images/image-2.png" width="600" alt="Настройки пользователя">
|
|
||||||
|
|
||||||
Проект
|
|
||||||
Пример заполнения основных полей
|
|
||||||
<img src="images/image-3.png" width="600" alt="Проект">
|
<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="Создание репозитория">
|
<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="Права доступа">
|
<img src="images/image-5.png" width="600" alt="Права доступа">
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
Необходимо запустить RAC как службу
|
Необходимо запустить RAC как службу, для этого есть свой скрипт
|
||||||
Сделать это можно с помощью скрипта
|
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary><strong> Скрипт запуска скрапта добавления службы RAS </strong></summary>
|
<summary><strong> Скрипт добавления службы RAS </strong></summary>
|
||||||
|
|
||||||
``` bat
|
``` bat
|
||||||
@echo off
|
@echo off
|
||||||
@@ -150,37 +149,43 @@ sc stop %SrvcName%
|
|||||||
sc delete %SrvcName%
|
sc delete %SrvcName%
|
||||||
sc create %SrvcName% binPath= %BinPath% start= auto obj= %SrvUserName% password= %SrvUserPwd% displayname= %Desctiption%
|
sc create %SrvcName% binPath= %BinPath% start= auto obj= %SrvUserName% password= %SrvUserPwd% displayname= %Desctiption%
|
||||||
```
|
```
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
|
Для работы с гитхаб необходимо установить [GitHub CLI](https://cli.github.com/)
|
||||||
|
|
||||||
## Процесс работы
|
## Процесс работы
|
||||||
|
|
||||||
Каждой базе должнга соответствовать своя папка, подключенная к репозиторию.
|
Каждой базе должна соответствовать своя папка, подключенная к репозиторию. Это можно проверить по наличию кнопки создания репозитория
|
||||||
Это проверить можно по наличию кнопки создания репозитория:
|
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
|
|
||||||
### Создаем задачу
|
### Создаем задачу
|
||||||
|
|
||||||
Важно, с системе получние настроек для задач.
|
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
Тут есть 3 варианта:
|
Тут есть 3 варианта:
|
||||||
|
|
||||||
* Новая задача - создается новая ветка из ветки Develop
|
* Новая задача - создается новая ветка из ветки Develop
|
||||||
* HotFix к задаче - создается новая задача к задаче по ветке main/master, создает новую задачу к текущей
|
* HotFix к задаче - создается новая ветка для задачи из ветки main/master, создает новую задачу к текущей
|
||||||
* HotFix новая задача - требует наличие задачи в таск трекере
|
* HotFix новая задача - ??? требует наличие задачи в таск трекере
|
||||||
|
|
||||||
|
В результате задача должна появиться в списке, прошу обратить внимание на кнопки:
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
### Таск трекеры
|
### Таск трекеры
|
||||||
|
|
||||||
Сейчас поддерживается 2 таск трекера
|
Сейчас поддерживается 2 таск трекера
|
||||||
* 1С (только простая загрузка задач)
|
#### 1С (только простая загрузка задач)
|
||||||
Передаем параметр - номер задачи
|
|
||||||
|
Передаем параметр - номер задачи
|
||||||
|
|
||||||
```curl
|
```curl
|
||||||
curl --location 'https:/Путь К Базе/hs/tasks/task?id=000000002'
|
curl --location 'https:/Путь К Базе/hs/tasks/task?id=000000002'
|
||||||
```
|
```
|
||||||
|
|
||||||
На входе мы ожидаем JSON
|
В ответ мы ожидаем получить JSON
|
||||||
|
|
||||||
```json
|
```json
|
||||||
{
|
{
|
||||||
@@ -194,25 +199,23 @@ curl --location 'https:/Путь К Базе/hs/tasks/task?id=000000002'
|
|||||||
"Очередь":
|
"Очередь":
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
* Битрикс
|
#### Битрикс
|
||||||
|
|
||||||
Задача должна появиться в списке, прошу обратить внимание на кнопки:
|
|
||||||

|
|
||||||
|
|
||||||
### Переходим на ветку
|
### Переходим на ветку
|
||||||
|
|
||||||
Во время перехода папка базы репозитория переключается на выбранную в списке ветку задачи, далее происходит загрузка в базу:
|
Во время перехода, репозиториий базы переключается на выбранную в списке ветку задачи, далее происходит загрузка в базу:
|
||||||
* Основной конфигурации, если стоит галочка
|
* Основной конфигурации, если стоит галочка
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
* Загрузка расширений указанных в задаче
|
* Загрузка расширений указанных в задаче
|
||||||
* Компилирование внешних обработок и помещение их в папку проекта.
|
* Компилирование внешних обработок и помещение их в папку проекта. `\Repositories\ИмяБазы\build\epf`
|
||||||
\Repositories\ИмяБазы\build\epf
|
|
||||||
|
|
||||||
### Зафиксировать изменения
|
### Зафиксировать изменения
|
||||||
|
|
||||||
Разбор объектов указанных в задаче на исходники (Конфигурация и расширения).
|
Разбор объектов указанных в задаче на исходники (Конфигурация и расширения).
|
||||||
Разбор внешних обработок/отчетов происходит из папки
|
Разбор внешних обработок/отчетов происходит из папки `build\epf`
|
||||||
build\epf
|
|
||||||
|
|
||||||
### Создание мердж реквеста
|
### Создание мердж реквеста
|
||||||
В случае если это GITHUB - необходим GITHUB-CLI
|
В случае если это GITHUB - необходим GITHUB-CLI
|
||||||
@@ -227,20 +230,21 @@ build\epf
|
|||||||
|
|
||||||
### Получение расширенных логов
|
### Получение расширенных логов
|
||||||
Для вывода логов от 1commands (Блиблиотека запуска команд https://github.com/artbear/1commands)
|
Для вывода логов от 1commands (Блиблиотека запуска команд https://github.com/artbear/1commands)
|
||||||
Мы можем зададать переменную окружения
|
Мы можем задать переменную окружения
|
||||||
|
|
||||||
``` bat
|
``` bat
|
||||||
set LOGOS_CONFIG=logger.oscript.lib.commands=DEBUG;
|
set LOGOS_CONFIG=logger.oscript.lib.commands=DEBUG;
|
||||||
```
|
```
|
||||||
Или добавить команды которые будет запускаться перед основными
|
Или добавить команды, которые будут запускаться перед основными
|
||||||
|
|
||||||
<img src="images/image-9.png" width="600" alt="Запуск команд">
|
<img src="images/image-9.png" width="600" alt="Запуск команд">
|
||||||
|
|
||||||
# ВАЖНО
|
# ВАЖНО
|
||||||
Так как инзначально инструмент разрабатывался для нужд компании и подгонялся под требования, некоторый функционал не оттустирован в парадигме универсальности.
|
Так как инзначально инструмент разрабатывался для нужд компании и подгонялся под внутренние требования, некоторый функционал не оттестирован в парадигме универсальности.
|
||||||
|
|
||||||
Если вы захотите развернуть инструмент у себя и что-то не получается - смело пишите. Обращайтесь за помощью, любые ваши вопросы помогут дописать руководство и поправить найденные замечания.
|
Если вы захотите развернуть инструмент у себя и что-то не получается - смело пишите. Обращайтесь за помощью, любые ваши вопросы помогут дописать руководство и поправить найденные замечания.
|
||||||
|
|
||||||
Так же всячески приветствуются issues.
|
Так же, всячески приветствуются issues.
|
||||||
|
|
||||||
|
|
||||||
Использование опенсорс библиотек
|
Использование опенсорс библиотек
|
||||||
|
Reference in New Issue
Block a user