VS清除打开项目时的TFS版本控制提示

简介: 原文:http://blog.useasp.net/archive/2015/12/15/how-to-permanently-remove-vs-project-TFS-source-version-control-binding.

原文:http://blog.useasp.net/archive/2015/12/15/how-to-permanently-remove-vs-project-TFS-source-version-control-binding.aspx

对于曾经做过TFS版本控制的项目,在版本控制服务不可用的时候,依然会在每次打开项目的时候都提示:当前项目是版本控制的项目,但是当前版本控制不可用,balabala的信息,如果是需要进行版本控制的项目在临时无法连接到版本控制服务器的时候出现这个提示,也属于正常的,但是如果是不再需要进行版本控制的项目,还这么次次打开都这么提示,就有些受不了——关键是,没有TFS,只能想办法删除了。

tfs版本控制提示

tfs提示信息

在项目中要永久清除TFS版本控制,需要操作三步(请确保操作之前没有在使用当前项目):

  1. 清除(删除)项目下的所有版本控制文件,这些文件有:*.vssscc,*.vspscc

    删除这些版本控制文件比较简单,搜索这些后缀的文件,删除即可;

  2. 修改项目的解决方案文件:*.sln

    先要确认解决方案文件(*.sln)是可修改的,如果是Read-Only的文件,则需要先调整为可修改。 
    切勿使用Visual Studio打开文件,使用文本编辑器打开*.sln文件,在文件中,我们将能看到类似下面的代码:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    GlobalSection(TeamFoundationVersionControl) = preSolution
            SccNumberOfProjects = 4
            SccEnterpriseProvider = {XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}
            SccTeamFoundationServer = here is your project's tfs
            SccLocalPath0 = .
            SccProjectUniqueName1 = project-unique-name1.csproj
            SccProjectName1 = your-project-name
            SccLocalPath1 = project-local-path
            SccProjectUniqueName2 = project-unique-name2.csproj
            SccProjectName2 = project-name-2
            SccLocalPath2 = local-path2
            SccProjectUniqueName3 = project-unique-name3.csproj
            SccProjectName3 = project-name-3
            SccLocalPath3 = local-path3.
        EndGlobalSection

     这段代码是项目启动时加载的TFS配置,我们要剔除TFS,此段代码就必须删掉了,删除之后,保存文件即可。

  3. 修改各个子项目中的版本控制信息,这些信息在:*.csproj(C#项目,其他项目文件后缀不同)

    完成上面两步,项目的TFS控制信息已经清理的差不多了,如果是VS2010项目,则用2010打开的时候会有提示,选择永久(完全)删除源代码控制的关联绑定,确认即可完成整个项目的TFS清理工作1。

    Mitchell这里使用的是VS2012,打开的是VS2013的项目,在打开项目的时候,虽然完成了上面两步,但在加载项目时,在VS的输出窗口中还是会显示:

    1
    2
    3
    4
    未能找到解决方案的映射。
    未能找到解决方案的映射。
    未能找到解决方案的映射。
    活动解决方案已暂时与源代码管理断开连接,因为服务器不可用。若要尝试重新连接源代码管理,请在服务器可用时关闭并重新打开解决方案。如果要连接到其他服务器,请使用“更改源代码管理”对话框。

     这种问题是因为*.csproj中还有版本控制信息,导致VS还会尝试进行TFS相关操作,要解决这个问题,需要删除*.csproj文件中的相关信息,用文本编辑器打开文件,你能看到类似下面的信息:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    < PropertyGroup >
       <!--其他配置-->
       < TargetFrameworkVersion >v4.5</ TargetFrameworkVersion >
       < FileAlignment >512</ FileAlignment >
       < SccProjectName >???</ SccProjectName >
       < SccLocalPath >???</ SccLocalPath >
       < SccAuxPath >???</ SccAuxPath >
       < SccProvider >???</ SccProvider >
    </ PropertyGroup >

    上面的Scc*的配置即是版本控制信息。可以简单粗暴的将它删除即可,删除完成后,保存文件。

完成上面的操作之后,我们再次用VS打开项目,就不会再有任何TFS的相关信息提示了,又可以和VS快乐的玩耍了。

当然如果你觉得这还是麻烦,那么你可以下载Mitchell写的TFSEliminator 工具(需要.NET 4.0支持)

使用也是相当方便,有两种方式:

    1. 1. 命令行:
1
2
3
4
5
# 在命令行下,使用:
# Application ProjectRoot
# 的格式即可完成对指定目录下的TFS信息的剔除
# 如:项目在D:\Temp\Test下面
TFSEliminator.exe D:\Temp\Test
  1. 要直接运行,只需要将程序复制到项目的根目录下,然后双击运行即可。

注意: 命令行会有提示,如果确认路径没有问题,记得按回车或者Y哦~

 

相关文章
|
5月前
|
Android开发 数据安全/隐私保护
Eclipse清除SVN的账号信息
Eclipse清除SVN的账号信息
如何确保sublime text每次启动时不会自动打开以前打开的文档
如何确保sublime text每次启动时不会自动打开以前打开的文档
499 0
如何确保sublime text每次启动时不会自动打开以前打开的文档
|
存储 安全 Linux
Visual Studio Code 被发现新“漏洞”!疯狂创建垃圾文件+自动修改用户文件
Visual Studio Code 被发现新“漏洞”!疯狂创建垃圾文件+自动修改用户文件
132 0
Visual Studio Code 被发现新“漏洞”!疯狂创建垃圾文件+自动修改用户文件
|
XML Java Android开发
AndroidStudio不自动添加新创建的文件到VCS的解决办法
AndroidStudio不自动添加新创建的文件到VCS的解决办法
AndroidStudio不自动添加新创建的文件到VCS的解决办法
IDEA设置新创项目的默认mavne仓库地址(而不是每次新建项目值都默认是C盘的:.m2文件夹)
IDEA设置新创项目的默认mavne仓库地址(而不是每次新建项目值都默认是C盘的:.m2文件夹)
155 0
IDEA设置新创项目的默认mavne仓库地址(而不是每次新建项目值都默认是C盘的:.m2文件夹)
IDEA快速恢复开发:导出配置和导入配置操作
IDEA快速恢复开发:导出配置和导入配置操作
166 0
IDEA快速恢复开发:导出配置和导入配置操作
VSCode 在保存时自动对代码进行修复
在设置中更改如下内容 // 自动修复 "tslint.autoFixOnSave": true
3108 0
Confluence 6 配置草稿保存的时间
这个设置仅仅应用到 Confluence 6.0 及后续版本中,如果你选择 禁用(disable )collaborative editing。
1269 0
|
JSON 数据格式
iTerm配置导出与迁移方法
1、前言 iTerm软件的实用就不用在说了,最近迁移新工作电脑,打算把自己电脑配置好的iTerm迁移到新电脑,网上找了很久都没有找到教程,看到iTerm的profiles下有 'Copy Profile as JSON',但没有导出成文件,也没有导入配...
3440 0