源代码管理包的模型

以下模型表示源代码管理实现的示例。 在模型中,你将看到必须实现的接口以及必须调用的环境服务。 与所有服务一样,您实际上是调用通过服务获取的特定接口的方法。 标识类的名称,以便更轻松地查看源代码管理是如何执行的。

SCC_TUP示例

源代码管理项目示例

Interfaces

可以使用下表所示的接口列表为 Visual Studio 中的新项目类型实现源代码管理。

接口 Use
IVsQueryEditQuerySave2 项目和编辑器在保存或更改(脏)文件之前调用。 使用此 SVsQueryEditQuerySave 服务访问此接口。
IVsTrackProjectDocuments2 项目调用以请求添加、删除或重命名文件或目录的权限。 项目还会调用此接口,以在完成已批准的添加、删除或重命名作时通知环境。 它使用 SVsTrackProjectDocuments 服务进行访问。
IVsTrackProjectDocumentsEvents2 注册以在项目添加、重命名或删除文件或目录时接收通知的任何实体都可以实现此功能。 若要注册事件通知,请调用 AdviseTrackProjectDocumentsEvents
IVsSccManager2 项目调用以向源代码管理包注册,并获取有关源代码管理状态的信息。 使用此 SVsSccManager 服务访问此接口。
IVsSccProject2 由项目实现以响应源代码管理请求以获取有关文件的信息,并获取项目文件所需的源代码管理设置。