Архитектура подключаемого модуля системы управления версиями

Вы можете добавить поддержку системы управления версиями в интегрированную среду разработки Visual Studio, реализовав и подключив подключаемый модуль управления версиями. Интегрированная среда разработки подключается к подключаемой системе управления версиями через хорошо определенный API системы управления версиями. Интегрированная среда разработки предоставляет функции управления версиями системы управления версиями, предоставляя пользовательский интерфейс, состоящий из панелей инструментов и команд меню. Подключаемый модуль управления версиями реализует функциональные возможности системы управления версиями.

Ресурсы подключаемого модуля управления версиями

Подключаемый модуль управления версиями предоставляет ресурсы для создания и подключения приложения управления версиями к интегрированной среде разработки Visual Studio. Подключаемый модуль управления версиями содержит спецификацию API, которая должна быть реализована подключаемым модулем системы управления версиями, чтобы его можно было интегрировать в интегрированную среду разработки Visual Studio. Он также содержит пример кода (написанный на языке C++), реализующий подключаемый модуль управления версиями, демонстрирующий реализацию основных функций, совместимых с API подключаемого модуля управления версиями.

Спецификация API подключаемого модуля управления версиями позволяет использовать любую систему управления версиями, если вы создаете библиотеку DLL системы управления версиями с необходимым набором функций, реализованных в соответствии с API подключаемого модуля управления версиями.

Компоненты

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

Source Code Control Architecture Diagram Схема архитектуры, показывающая взаимодействие между подключаемым модулем управления версиями VS и системы управления версиями

Как показано на схеме архитектуры, оболочка Visual Studio, помеченная как оболочка VS на схеме, размещает рабочие проекты и связанные компоненты пользователя, такие как редакторы и Обозреватель решений. Пакет адаптера системы управления версиями обрабатывает взаимодействие между интегрированной среду разработки и подключаемым модулем управления версиями. Пакет адаптера управления версиями предоставляет собственный пользовательский интерфейс управления версиями. Это пользовательский интерфейс верхнего уровня, с которым взаимодействует пользователь, чтобы инициировать и определить область операции управления версиями.

Подключаемый модуль управления версиями может иметь собственный пользовательский интерфейс, который может состоять из двух частей, как показано на рисунке. Поле с меткой "Пользовательский интерфейс поставщика" представляет пользовательские элементы пользовательского интерфейса, которые вы предоставляете в качестве создателя подключаемого модуля управления версиями. Они отображаются непосредственно подключаемым модулем управления версиями при вызове расширенной операции управления версиями. Поле с меткой "Вспомогательный пользовательский интерфейс" — это набор функций подключаемого интерфейса управления версиями, которые косвенно вызываются через интегрированную среду разработки. Подключаемый модуль управления версиями передает сообщения, связанные с пользовательским интерфейсом, интегрированной среде разработки через специальные функции обратного вызова, предоставляемые интегрированной интегрированной системой разработки. Вспомогательный пользовательский интерфейс упрощает более простую интеграцию с интегрированной средой разработки (часто с помощью кнопки "Дополнительно ") и таким образом обеспечивает более унифицированный интерфейс конечного пользователя.

Подключаемый модуль управления версиями не может вносить изменения в оболочку Visual Studio и, следовательно, в пакет адаптера системы управления версиями или пользовательский интерфейс системы управления версиями, предоставляемый интегрированной интегрированной системой разработки. Она должна обеспечить максимальное использование гибкости, предлагаемой с помощью реализации различных функций API подключаемого модуля управления версиями, которые способствуют интегрированному интерфейсу для конечного пользователя. В справочном разделе документации по api подключаемого модуля управления версиями содержатся сведения о некоторых расширенных возможностях подключаемого модуля управления версиями. Чтобы использовать эти функции, подключаемый модуль управления версиями должен объявить свои расширенные возможности интегрированной среды разработки во время инициализации, и он должен реализовать определенные расширенные функции для каждой возможности.