Visual Studio 2005/2008/2010版本控制 Version Control for Visual Studio 2005/2008/2010

从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