从Visual Studio 2005开始,版本控制信息不再记录在注册表中,而是在每个项目的文件夹中。
.sln和.prj文件
把一个项目加入版本控制后,.sln和.prj文件内容会发生变化,增加了一个SourceCodeControl模块:
Solution File (.sln):
GlobalSection(SourceCodeControl) = preSolution
SccNumberOfProjects = 2
SccLocalPath0 = .
SccProjectUniqueName1 = WindowsFormsApplication1.csproj
SccLocalPath1 = .
EndGlobalSection
Project file (.csproj):
<SccProjectName>SAK</SccProjectName>
<SccLocalPath>SAK</SccLocalPath>
<SccAuxPath>SAK</SccAuxPath>
<SccProvider>SAK</SccProvider>
.sln文件记录哪些项目在版本控制中,.prj文件记录项目的版本控制信息。SAK是已知(should already known)的缩写,它指示solution/project去mssccprj.scc文件读取详细的版本控制信息。
mssccprj.scc文件
mssccprj.scc是由scc provider生成的、本地的、客户端的文件。在sln文件夹和每个prj所在的文件夹中都会生成相应的SCC文件。它最重要的两个变量是Aux_Path和Project_Name,记录项目在哪个服务器上以及路径。
SCC = This is a Source Code Control file.
[WindowsFormsApplication1.csproj]
SCC_Aux_Path = demo.dynamsoft.com:8877:Common
SCC_Project_Name = $/WindowsFormsApplication1.root/WindowsFormsApplication1
[WindowsFormsApplication1.sln]
SCC_Aux_Path = demo.dynamsoft.com:8877:Common
SCC_Project_Name = $/WindowsFormsApplication1.root/WindowsFormsApplication1
.sln文件记录哪些项目在版本控制中,.prj文件记录项目的版本控制信息。SAK是已知(should already known)的缩写,它指示solution/project去mssccprj.scc文件读取详细的版本控制信息。
mssccprj.scc文件
mssccprj.scc是由scc provider生成的、本地的、客户端的文件。在sln文件夹和每个prj所在的文件夹中都会生成相应的SCC文件。它最重要的两个变量是Aux_Path和Project_Name,记录项目在哪个服务器上以及路径。
SCC = This is a Source Code Control file.
[WindowsFormsApplication1.csproj]
SCC_Aux_Path = demo.dynamsoft.com:8877:Common
SCC_Project_Name = $/WindowsFormsApplication1.root/WindowsFormsApplication1
[WindowsFormsApplication1.sln]
SCC_Aux_Path = demo.dynamsoft.com:8877:Common
SCC_Project_Name = $/WindowsFormsApplication1.root/WindowsFormsApplication1