2013-04-27 141 views
26

目前该解决方案由SVN管理,我想切换到git。在Visual Studio中更改源代码管理插件

enter image description here

我从来没有过去,当我打开的.sln它再次:当我工具 - >选项 - >源控制 - >插件选择和改变插件我得到这个对话框做仍然是SVN。

我有一种感觉,我已经做了很多次了。

其他信息:这些文件已经由git管理,我只是使用git扩展来克隆它,它是np。问题出在VS.

回答

43

建议:不要打扰切换。从源代码管理(SVN)中删除它并重新检查(git)。或者,如果通过Visual Studio工具删除它不起作用,请按以下方法手动执行:

  1. 关闭Visual Studio;
  2. 删除.svn文件夹
  3. 打开记事本中的.SLN文件,找到指定SCC提供程序的行并删除它们。
  4. 再次在Visual Studio中打开解决方案 - 它不应再受源代码控制,您应该可以在git中进行检查。

编辑: 手动从.sln文件删除这并获得成功:

GlobalSection(SubversionScc) = preSolution 
    Svn-Managed = True 
    Manager = AnkhSVN - Subversion Support for Visual Studio 
EndGlobalSection 
+0

步骤2有更好的选择。您可以不删除所有.svn文件夹,而是导出源文件。例如, TortoiseSVN,选择解决方案的根文件夹 - >右键单击 - > TortoiseSVN菜单 - >导出... – ffonz 2015-12-01 08:43:26

+1

这个过程有更好的解决方案。等同于从中删除SCC条目。sln文件就是直接在Visual Studio中断开与SVN的连接,正如我的回答中所解释的。 – JotaBe 2016-10-26 16:14:31

0

正确的方法去除这些设置SCC提供者是文件 - >源代码管理 - >更改源代码管理。 AnkhSVN将其称为“源代码管理”菜单“Subversion”。

这招应该为所有表现良好的SCC提供商(VSS,TFS,AnkhSVN的,等等,等等)

+0

当我遇到问题时,删除AnkhSVN绑定的唯一方法是手动清理'* .sln'文件。 – bahrep 2013-05-06 12:18:52

+1

我也试过,但没有奏效。我将Ankh作为SVN的插件。不要删除这个答案。 – 2013-05-06 12:48:36

+1

如果您断开此对话框中的.sln文件,那么.sln中的注册将在解决方案文件再次保存时被删除。 (更改本身会将.sln标记为脏,所以VS会要求您保存它) – 2013-05-07 09:18:10

8

的更简单的方式做到这一点是一个两步过程,可以withput离开Visual Studio中有许多工作要做:

  1. 打开菜单选项File> Subversion> Change Source Control。在对话框中使用Disconnect按钮。

  2. 如问题本身所述,打开菜单Tools> Options,并将Source Control更改为git。这一次它会改变它而不会抱怨。

1

什么是真正帮助了我,我不能在我的Asp.net core解决方案文件夹中找到任何svn文件或.git,但实际上它是在C:\Users\NAME,这里删除.git文件是HIDDEN,然后它会自动从git改为TFVS ,它也以某种方式在我的解决方案文件夹中创建了这些git文件,再次删除它们,并且它开始正常工作。真是头疼。

相关问题