Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Следующая модель представляет пример реализации системы контроля над исходным кодом. В модели отображаются интерфейсы, которые необходимо реализовать, и службы среды, которые необходимо вызвать. Как и все сервисы, вы фактически вызываете методы определенного интерфейса, который вы получаете через сервис. Имена классов определяются, чтобы упростить контроль над исходным кодом и его выполнение.
Пример проекта системы контроля версий
Interfaces
Вы можете реализовать управление версиями для новых типов проектов в Visual Studio с помощью списка интерфейсов, показанных в следующей таблице.
| Интерфейс | Использование |
|---|---|
| IVsQueryEditQuerySave2 | Вызывается проектами и редакторами перед сохранением или изменением (грязными) файлами. Доступ к этому интерфейсу SVsQueryEditQuerySave осуществляется с помощью службы. |
| IVsTrackProjectDocuments2 | Вызывается проектами для запроса разрешения на добавление, удаление или переименование файла или каталога. Этот интерфейс также вызывается проектами для информирования среды о завершении утвержденного действия добавления, удаления или переименования. Доступ к нему осуществляется с помощью SVsTrackProjectDocuments службы. |
| IVsTrackProjectDocumentsEvents2 | Реализуется любой сущностью, которая регистрируется для получения уведомлений при добавлении, переименовании или удалении файла или каталога проекта. Чтобы зарегистрироваться для получения уведомлений о событии, позвоните по AdviseTrackProjectDocumentsEvents. |
| IVsSccManager2 | Вызывается проектами для регистрации в пакете управления версиями и получения сведений о статусе управления версиями. Доступ к этому интерфейсу SVsSccManager осуществляется с помощью службы. |
| IVsSccProject2 | Реализован проектом для реагирования на запросы системы управления версиями для получения сведений о файлах и получения параметров системы управления версиями, необходимых для файла проекта. |