本文介绍了我必须省略和编辑哪些文件以清除TFS绑定的所有痕迹?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述 我想将现有项目移动到新位置并删除其所有源代码控制绑定信息。 这是在Visual Studio 2003中创建的解决方案,它在当前状态下绑定(有点 - 它不能正常工作)到TFS,其绑定是通过使用MSSCCI插件/提供程序来控制的。 哪些文件我必须省略文件复制操作吗? 我需要保留哪些文件(如果有的话),删除或编辑某些TFS / MSSCCI绑定信息(和我需要删除或编辑哪些信息)? 我的假设是我需要从.sln文件中删除以下内容: GlobalSection(SourceCodeControl)= preSolution SccNumberOfProjects = 2 SccLocalPath0 =。 CanCheckoutShared = false SolutionUniqueID = {D6B21FF1-3534-49C0-8E4E-EE1FA496648E} SccProjectUniqueName1 = Platypus.csdproj SccLocalPath1 =。 CanCheckoutShared = false EndGlobalSection ? ...和.csdproj文件的这一部分: < ECSHARP ProjectType = Local ProductVersion = 7.10.6030 SchemaVersion = 1.0 ProjectGuid = { CA63566E-76DE-4EE5-8292-71EBF90A9AC9} SccProjectName = SAK SccLocalPath = SAK SccAuxPath = SAK SccProvider = SAK > 基于此,特别是当Constantin写道 ...当一个项目中的所有4个源控制连接字符串都有SAK值时,这只是一个标志,告诉VS该项目的真实源代码控制绑定是持久的由MSSCCI scc提供程序(不是Visual Studio),应该从scc提供程序写入的mssccprj.scc文件中读取与项目文件相同的文件夹。,SAK的东西确实应该得到麻袋。 ......我不应该复制以下文件: mssccprj。 scc vssver.scc Platypus.csdproj.vspscc Platypus.csproj.vspscc Platypus.vssscc b $ b ?解决方案 所以,对于后代(和/或过去的时间旅行者),这就是我为消除源控制绑定所做的事情: 0)创建一个新的用于存放受污染(源控制绑定)文件副本的文件夹。 1)将所有最新代码复制到那里,除了源代码 - 特定文件(我复制了所有* .resx和* .cs文件,还有Platypus.sln,Platypus.csdproj和Platypus.csproj)。 我没有复制: mssccprj.scc vssver.scc Platypus.csdproj.vspscc Platypus .csproj.vspscc Platypus.vssscc Platypus.csdproj.user Platypus.resharper.user 2)从Platypus.sln文件中删除整个块: GlobalSection (SourceCodeControl)= preSolution SccNumberOfProjects = 2 SccLocalPath0 =。 CanCheckoutShared = false SolutionUniqueID = {D6B21FF1-3534-49C0-8E4E-EE1FA496648E} SccProjectUniqueName1 = PDAClient.csdproj SccLocalPath1 =。 CanCheckoutShared = false EndGlobalSection 3 )从Platypus.csdproj中删除了SAKsy的东西,这样: < ecsharp > ProjectType =Local ProductVersion =7.10.6030 SchemaVersion =1.0 ProjectGuid ={CA63566E-76DE-4EE5-8292-71EBF90A9AC9} SccProjectName =SAK SccLocalPath =SAK SccAuxPath =SAK SccProvider =SAK> 。 。 。 < / ecsharp > ...成为: < ecsharp > ProjectType =Local ProductVersion =7.10.6030 SchemaVersion =1.0 ProjectGuid ={CA63566E-76DE-4EE5-8292 -71EBF90A9AC9}> < / ecsharp > 4)从Platypus.csproj文件中删除了四个SAK条目,其中: < propertygroup > < projecttype > 本地< / projecttype > < productversion > 9.0.21022 < / productversion > < schemaversion > 2.0 < / schemaversion > < projectguid > {0848BFFE-EC53-4CC2-89AC-DF02C06585C2} < / projectguid > < sccprojectname > SAK < / sccprojectname > < scclocalpath > SAK < / scclocalpath > < sccprovider > SAK < / sccprovider > 。 。 。 < sccauxpath > SAK < / sccauxpath > < / propertygroup > 几乎可以做到。 I want to move an existing project to a new location and strip it of all its source control binding information.It is a solution created in Visual Studio 2003, which in its current state is bound (sort of - it's not working well) to TFS, whose bindings are controlled by using the MSSCCI plugin/provider.Which files must I omit from my file-copying operation?Which files, if any, do I need to retain yet delete or edit certain TFS/MSSCCI binding information from (and what information do I need to delete or edit)?Is my assumption that I need to remove the following from the .sln file correct:GlobalSection(SourceCodeControl) = preSolution SccNumberOfProjects = 2 SccLocalPath0 = . CanCheckoutShared = false SolutionUniqueID = {D6B21FF1-3534-49C0-8E4E-EE1FA496648E} SccProjectUniqueName1 = Platypus.csdproj SccLocalPath1 = . CanCheckoutShared = false EndGlobalSection?...and this section of the .csdproj file:<ECSHARP ProjectType = "Local" ProductVersion = "7.10.6030" SchemaVersion = "1.0" ProjectGuid = "{CA63566E-76DE-4EE5-8292-71EBF90A9AC9}" SccProjectName = "SAK" SccLocalPath = "SAK" SccAuxPath = "SAK" SccProvider = "SAK" >Based on this, especially where Constantin wrote "...when all 4 source control connection strings in a project have "SAK" values, this is just a flag that tells VS that the real source control bindings of that project are persisted by the MSSCCI scc provider (not by Visual Studio) and should be read from the mssccprj.scc file written by the scc provider in the same folder as the project file.", the "SAK" stuff should indeed get the sack....and that I should not copy over the following files: mssccprj.scc vssver.scc Platypus.csdproj.vspscc Platypus.csproj.vspscc Platypus.vssscc? 解决方案 So, for posterity (and/or time travelers from the past), here's what I did to extinctify the source-control bindings:0) Created a new folder to house a copy of the polluted (source-control-bound) files.1) Copied all the latest code to there, except for the source-code-specific files (I copied over all *.resx and *.cs files, also Platypus.sln, Platypus.csdproj, and Platypus.csproj).I did NOT copy over: mssccprj.scc vssver.scc Platypus.csdproj.vspscc Platypus.csproj.vspscc Platypus.vssscc Platypus.csdproj.user Platypus.resharper.user2) Stripped this entire block from the the Platypus.sln file:GlobalSection(SourceCodeControl) = preSolutionSccNumberOfProjects = 2SccLocalPath0 = .CanCheckoutShared = falseSolutionUniqueID = {D6B21FF1-3534-49C0-8E4E-EE1FA496648E}SccProjectUniqueName1 = PDAClient.csdprojSccLocalPath1 = .CanCheckoutShared = falseEndGlobalSection3) Stripped out the "SAK"sy stuff from Platypus.csdproj, so that this:<ecsharp> ProjectType = "Local" ProductVersion = "7.10.6030" SchemaVersion = "1.0" ProjectGuid = "{CA63566E-76DE-4EE5-8292-71EBF90A9AC9}" SccProjectName = "SAK" SccLocalPath = "SAK" SccAuxPath = "SAK" SccProvider = "SAK">. . .</ecsharp>...became this:<ecsharp> ProjectType = "Local" ProductVersion = "7.10.6030" SchemaVersion = "1.0" ProjectGuid = "{CA63566E-76DE-4EE5-8292-71EBF90A9AC9}"></ecsharp>4) Removed the four"SAK" entries from the Platypus.csproj file, which had: <propertygroup> <projecttype>Local</projecttype> <productversion>9.0.21022</productversion> <schemaversion>2.0</schemaversion> <projectguid>{0848BFFE-EC53-4CC2-89AC-DF02C06585C2}</projectguid> <sccprojectname>SAK</sccprojectname> <scclocalpath>SAK</scclocalpath> <sccprovider>SAK</sccprovider> . . . <sccauxpath>SAK</sccauxpath></propertygroup>That pretty much did it. 这篇关于我必须省略和编辑哪些文件以清除TFS绑定的所有痕迹?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持! 10-23 03:17