Pull to refresh
0
InterSystems
InterSystems IRIS: СУБД, ESB, BI, Healthcare

Разработка в Caché Studio с использованием TortoiseGit

Reading time4 min
Views7.6K
Caché-Git — это модуль контроля версий для Caché Studio, который обеспечивает вызов диалоговых окон TortoiseGit непосредственно из Studio и полуавтоматическую синхронизацию рутин между Caché и локальным репозиторием.

В каждой области выбираются пакеты, проекты, классы, рутины, dfi-файлы, csp-страницы, csp-приложения которые будут остлеживаться Caché-Git.

Всякий раз при сохранении отслеживаемой программы, она будет экспортироваться на диск в репозиторий. При открытии программа будет загружаться из репозитория, если версия, находящаяся в нём свежее.

Caché-Git работает только на компьютерах, на которых установлен и сервер и клиент Caché. Caché-Git не будет работать при соединении с удалённым сервером.

Где взять


Репозиторий с Caché-Git находится по адресу github.com/intersystems-ru/cache-tort-git. Там же есть wiki, в которой описаны шаги по установке и использованию

Установка Caché-Git


Коротко

На время установки отключить read-only на CACHELIB и импортировать файл с проектом в область %SYS. Для нужных областей (например SAMPLES и USER) назначить класс %SourceControl.Git как класс контроля версий.

Подробно

На время установки вы должны включить возможность записи в базу CACHELIB. Это делается через «Портал управления системой». Выберите «Администрирование системы > Конфигурация > Конфигурация системы > Локальные базы данных». Щёлкните на ссылке «редактировать» в строке с CACHELIB и в выпадающем списке «Только чтение?» выберите «Нет». После установки Caché-Git флаг можно будет вернуть обратно.

В Caché Studio выберите область %SYS и импортируйте («Инструменты > Импортировать локально») файл c Caché-Git. Всё, можно опять запрещать запись в CACHELIB.

Теперь нужно установить области, в которых для контроля версий будет использоваться Caché-Git. Для этого в «Портале управления системой» выберите «Администрирование системы > Конфигурация > Дополнительные настройки > Система контроля версий». Для нужных вам областей отметьте класс %SourceControl.Git и нажмите «OK». Пример в этом туториале будет работать с областью SAMPLES, поэтому выберите класс %SourceControl.Git как класс системы контроля версий для неё.

***

После установки, в Caché Studio при выборе области, в которой Caché-Git назначен как система контроля версий, появится меню «Git».

Настройка


Чтобы настроить Caché-Git выберите меню «Git > Settings» в Caché Studio и укажите два параметра:

  • Путь к файлу tortoiseproc.exe. Это файл из программы TortoiseGit
  • Путь к временной папке, в которой будут создаваться локальные репозитории.

Эти параметры общие для всех областей.

Настройки TortoiseGit вызываются через меню «Git > Tortoise Git Settings».

Работа с локальным репозиторием


Откройте область SAMPLES. Чтобы проинициализировать репозиторий в области, выберите меню «Git > Create repo» и нажмите пару раз «OK». Меню Git приобретёт полный вид.

В инспекторе выберите элемент, который вы хотите добавить в Git, щёлкните по нему правой кнопкой и в контекстном меню Git выберите «Add to SourceControl».

Затем выберите пункт меню «Git > Commit». В нижней части открывшегося окна выберите все файлы и добавьте (щелчок правой кнопкой > Add) их к версионным. Если файлов нет — поставьте галочку Show Unversioned Files. Напишите комментарий к коммиту. Нажмите OK, а затем Close.

Файл sc-list.txt содержит список элементов, которые отслеживаются Caché-Git. Он нужен для того, чтобы передавать между двумя репозиториями информацию о программах, которые контролируются Git.

Два важных параграфа

Всякий раз, когда вы добавляете новый элемент к Caché-Git или сохраняете уже существующий, этот элемент экспортируется во временную папку, поэтому при вызове команд TortoiseGit (таких как, например, commit, push, revert и так далее) нет необходимости выгружать все программы (Git >Export All), которые отслеживаются Caché-Git.

При импорте наоборот. Во-первых, при pull или revert может измениться значительная часть программ. Во-вторых, вызов окон TortoiseGit из Caché Studio асинхронный и нет возможности узнать, когда то или иное окно закрыто и закончилась операция обновления файлов. ПОЭТОМУ. После всех операций, выполненных TortoiseGit, которые могут менять содержимое рабочей папки, выберите пункт меню «Git > Import All». Это команды — Clone, Pull, Fetch, Revert. Всякий раз, когда при выполнении одной из этих команд в окне вывода будет появляться напоминание «Choose Import All menu after work with Git»

Работа с удалённым репозиторием

Загрузить содержимое своего репозитория на сервер можно, выбрав пункт меню «Git > Push» и указав в поле «Arbitrary URL» адрес репозитория.

Подключение к репозиторию

Каждый локальный репозиторий Caché-Git хранится внутри подпапки папки указанной как временной при настройке (обычно, это c:\temp). Имя этой подпапки совпадает с именем области (namespace), например c:\temp\USER или c:\temp\SAMPLES.

Чтобы подключиться к удалённому репозиторию — выберите меню «Git > Clone». Введите имя репозитория, например «http://git.assembla.com/demo.git». TortoiseGit сам добавит имя папки demo к пути c:\temp\user, так что получится c:\temp\user\demo. Сотрите последнее «\demo», так чтобы осталось только c:\temp\user. Это нужно сделать только при клонировании, дальше при выполнении команд push, pull и так далее ничего не нужно будет менять.


Использование


Основной рабочий цикл выглядит так:

  1. Выполните Pull.
  2. Разберите конфликты в TortoiseGit, если есть
  3. Чтобы загрузить изменения с диска в Caché, выберите меню Import All.
  4. Выполните изменения в Caché Studio.
  5. [Необязательно] Чтобы принудительно выгрузить изменения с диска в Caché, выберите меню Export All.
  6. Выберите Commit
  7. Выберите Push или из меню Caché Studio или сразу после Commit.


Пример установки и работы можно посмотреть на видео:
Tags:
Hubs:
Total votes 4: ↑3 and ↓1+2
Comments1

Articles

Information

Website
www.intersystems.com
Registered
Founded
1978
Employees
1,001–5,000 employees
Location
США