Контроль версий проектов

PolyAnalyst может использовать Git для ведения истории конфигурации проекта. Интеграция доступна, когда администратор указывает исполняемый файл Git в настройке сервера Paths/Git, описанной в разделе Настройки хранения. Если эта настройка пуста, команды и элементы управления версиями не отображаются.

Команда Сохранить и закоммитить…​ доступна в главном меню Аналитического клиента и Редактора отчетов, когда открыт проект или отчет. Отчет всегда входит в проект, поэтому при создании коммита из Редактора отчетов сохраняется связанный с отчетом проект. Команда История…​ отображается только после инициализации Git-репозитория. В окне Открыть проект она находится в группе команд сравнения проектов; см. Сравнение проектов в окне открытия проекта.

Сохранение проекта и создание коммита

Выберите Сохранить и закоммитить…​, чтобы открыть диалог, в котором можно ввести сообщение коммита и выполнить следующие действия:

  • Просмотреть изменения…​ – после подтверждения сохраняет проект и открывает окно Изменения проекта с различиями между текущим проектом и последним коммитом. Кнопка доступна только при наличии Git-репозитория. После построения различий PolyAnalyst может автоматически сформировать сообщение с количеством добавленных, измененных и удаленных узлов и отчетов, если поле сообщения все еще пусто.

  • Коммит – сохраняет проект и создает в ветке master коммит с управляемыми файлами конфигурации проекта. Сообщение коммита не может быть пустым.

  • Закрыть – закрывает диалог без создания коммита.

При первом коммите PolyAnalyst инициализирует Git-репозиторий в папке проекта, а также создает и добавляет в коммит файл .gitignore. Помимо .gitignore, в коммит попадают только файлы конфигурации проекта, которыми управляет PolyAnalyst и которые входят в стандартные резервные копии проекта; остальные файлы проекта игнорируются. Имя автора коммита берется из текущего соединения, а адрес электронной почты — из профиля пользователя. Для создания коммита в профиле должен быть указан адрес электронной почты.

Просмотр истории проекта

Выберите История…​, чтобы просмотреть коммиты ветки master. В таблице отображаются хеш, дата, автор, адрес электронной почты и сообщение каждого коммита. Если история велика, нажмите Загрузить еще, чтобы получить дополнительные коммиты.

Нажмите правой кнопкой мыши на ревизию для доступа к следующим командам:

  • Переключиться…​ – восстанавливает конфигурацию проекта из выбранного коммита, не удаляя более поздние коммиты из истории. Если проект в данный момент открыт хотя бы в одном соединении, PolyAnalyst предупреждает о потере текущих изменений открытого проекта и запрашивает подтверждение.

  • Просмотреть изменения…​ – сравнивает выбранную ревизию с проектом, который в данный момент хранится в папке проекта, и открывает окно Изменения проекта.

  • Сбросить до этой версии…​ – безвозвратно удаляет все коммиты после выбранной ревизии и восстанавливает проект из этой ревизии. PolyAnalyst всегда предупреждает о потере последующей истории. Если проект открыт хотя бы в одном соединении, предупреждение также сообщает о потере его текущих изменений.

  • Экспорт – экспортирует выбранную ревизию в файл .ps6.

Чтобы сравнить две ревизии, выделите две строки, удерживая Ctrl, затем нажмите Просмотреть изменения…​ или выберите эту же команду в контекстном меню.

Сравнение проектов в окне открытия проекта

В окне Открыть проект команды сравнения собраны в контекстном меню проекта над пунктом Изменить физическое расположение:

  • История…​ – открывает историю Git-коммитов. Команда отображается только для проекта с инициализированным Git-репозиторием.

  • Просмотреть изменения…​ – открывает подменю доступных резервных копий. Выберите копию, чтобы сравнить ее с текущим проектом. Команда доступна пользователям, которые могут восстанавливать проект из резервной копии.

  • Добавить к сравнению – запоминает выбранный проект как одну из сторон последующего сравнения. Если выбрать Добавить к сравнению на другом проекте, ранее запомненный проект заменяется.

  • Сравнить с <имя проекта> – сравнивает текущий проект с проектом, добавленным к сравнению. Команда отображается только после того, как Добавить к сравнению уже использована для другого проекта.

  • Сравнить – сравнивает два выделенных проекта. Выделите два проекта в одной папке и выберите Сравнить в контекстном меню.

Необходим доступ к обоим проектам. Сравнение использует конфигурацию проектов и не изменяет ни один из них.

Просмотр изменений проекта

В окне Изменения проекта отображаются общее количество различий и дерево измененных элементов проекта. Раскройте группу, чтобы загрузить и просмотреть входящие в нее элементы. Таблица содержит следующие колонки:

  • Элемент – элемент проекта, например узел, отчет, страница, компонент или связь;

  • Действие – элемент был добавлен (), изменен () или удален ();

  • До и После – значения до и после изменения;

  • Кем изменено и Изменено – пользователь и время изменения, если эта информация доступна.

Для структурированных настроек нажмите на значение в колонке До или После, чтобы открыть его в удобном для чтения представлении.

Это же окно используется для сравнения следующих версий проекта:

  • последней версии, сохраненной вручную, и версии автосохранения при открытии проекта;

  • резервной копии и текущего проекта;

  • текущего проекта и последнего Git-коммита;

  • одной Git-ревизии и текущего проекта;

  • двух выбранных Git-ревизий;

  • двух проектов из окна Открыть проект.

Просмотр изменений не восстанавливает резервную копию, не переключает проект на другую ревизию и никак не изменяет проект.