Контроль версий для InterSystems Ensemble/Caché
Я нахожусь в группе, которая начинает разрабатывать с использованием InterSystems Ensemble (интегрированная среда, построенная на основе InterSystems Caché).
InterSystems не обеспечила осведомленность об управлении источниками на портале управления Ensemble, и это кажется источником проблем для команды разработчиков, к которой мы хотели бы обратиться.
Я хотел бы знать, какую систему контроля версий вы используете для Ensemble/Caché и как вы структурируете свой процесс разработки вокруг нее.
7 ответов
Другой альтернативой кажется TrackWare, которая также разработана специально для Caché.
Я нашел VC / m, систему контроля версий, разработанную для Caché.
Не стесняйтесь добавлять свои комментарии, если у вас есть опыт работы с ним.
Если вы не боитесь разработки, вы можете сделать некоторые разработки, чтобы подключить студию к вашему текущему инструменту контроля версий. В Cache есть зацепки, которые позволяют обнаруживать изменения в файлах и взаимодействовать с инструментом контроля версий.
Здесь ссылка на PDF-файл описывает основу: Использование Studio Source Control Hooks
Конечно, с этим решением вам придется проделать большую работу на вашей стороне.
Я использую Mercurial, и хотя я использую хук управления исходным кодом Cache Studio (я не использую ансамбль), я думаю, что в принципе то же самое решение будет работать для вас.
Ключ в том, что это распределенный источник контроля. Таким образом, все, что нужно сделать, - это сохранить текущий файл в папку на моем жестком диске и сохранить его в моем локальном хранилище. Когда все работает правильно локально, я помещаю его в центральное хранилище - другими словами, я просто использую управление распределенным источником обычным образом.
Приятно фиксировать каждое сохранение, так как это дает мне возможность откатывать вещи обратно, если я что-то напутал, но это на самом деле не нужно. Вы можете написать что-то, что вытолкнет код в ваш локальный репозиторий, когда вы вызываете его из командной строки Cache.
С распределенным управлением исходным кодом тот факт, что функции регистрации и извлечения не поддерживаются, не имеет значения, вы решаете эти проблемы путем объединения, когда вы перемещаетесь в центральный репозиторий (или, тем не менее, вы решаете структурировать свои репозитории).
Одно предупреждение - для определений классов Cache они экспортируются как XML в формате, который вы не определяете. Он включает отметку времени, когда файл был сгенерирован, и дату последнего изменения. Они вводят систему контроля источника в заблуждение, что они изменились, когда не изменились. Таким образом, вам придется проанализировать XML, по крайней мере, достаточно, чтобы удалить их. Я не знаю флага, чтобы предотвратить их создание в первую очередь.
Поздний ответ, но в любом случае - вы можете взглянуть на CodeTools от Synerva., CodeControl работает как плагин Studio
CodeTools Synerva предлагают довольно хорошее решение для этого. использовал это в нескольких проектах в течение довольно долгого времени.