当Resharp说“无法修改文档”时,我需要一个解决方法。有人知道为什么这样做以及如何解决吗?


79

在过去的几个月中,我注意到几次,有时我会使用黄色的小灯泡图标,然后右键单击它并选择一个选项来为我修复某些东西,然后仅突出显示要修复的内容并弹出一个消息“无法修改文档”。

有人遇到这个问题吗?
你知道如何克服吗?
即使我可以手动编辑该文档,也几乎像resharper认为该文档是只读文档或其他内容。


1
您是否正在使用Git进行源代码控制?您正在使用哪个Git客户端?
约翰·桑德斯

是。我正在使用GIT。我正在使用TFS Microsoft客户端。
柯蒂斯

1
对我来说,这是在执行测试项目时发生的。问题恰好是git的根目录已为C:\ Source配置,并且测试项目已在“ C:\ users \ <userName>中创建” \ Documents \ Visual Studio 2013 \ Projects“,这是VS 2013创建新项目的默认路径。显然,VS的默认项目创建路径不在git源代码管理的根目录中,因此git无法将文件跟踪为“未跟踪”状态导致此编辑问题。当我将测试项目文件夹移到git的根目录时,它立即得到解决
RBT

1
重新启动Visual Studio通常可以帮到我
Robbie Dee

Answers:


28

我在Visual Studio 2013中遇到了同样的问题。
解决方案是将项目添加到版本控制(在我的情况下为git)。

现在,如果您不需要,则不需要进行提交,而只需将解决方案添加到版本控制中,问题就可以解决了。


2
当您在VS(或更具体地说-MS GIT插件)未考虑的目录中添加新项目时(在其他项目处于GIT源代码管理下)时,有时会发生这种情况。这就是我的原因。在解决方案文件夹下面移动项目目录可以解决问题
Marek 2015年

我喜欢禁用Visual Studio源代码控制插件的解决方案,因为这种情况更为常见。如果将项目添加到源代码管理中,则完全没有问题。但是,如果启用了源代码管理插件,并且未将代码添加到存储库中,则会发生此问题。因此,对我来说,更简单地禁用源代码管理插件会更合乎逻辑。
Roboblob 2015年

174

禁用Visual Studio源代码管理插件。

  1. 工具->选项->源代码管理
  2. 将“当前源代码管理插件”从“ Microsoft Git Provider”更改为“ None”

10
如果要使用它会怎样?我认为接受的答案会很好吗?只要是源代码(GIT),都没关系吗?
bdwakefield 2014年

2
谢谢!我还必须重新启动Visual Studio才能使修复工作。
卡雷,2015年

2
如果您的项目使用的是Git,则不能更改源代码控制提供程序。但是,此问题似乎仅发生在非版本化的文件中。因此,请使用git客户端(例如TortoiseGit)添加这些文件。请注意,在Visual Studio中重命名文件不会自动还原/取消添加旧名称并添加新名称,因此您需要再次遍历Visual Studio才能恢复工作环境。
Zastai

也为我工作。令人难以置信的是,这是一个修复程序。我必须在VS2015中禁用才能使其正常工作的东西令人难以置信!!!
Martijn B

4

对我来说,窍门是卸载并重新加载项目,其中编辑失败的文件位于该项目下。(只需右键单击该项目,然后从上下文菜单中选择“卸载项目”。


1

我以管理员身份启动VS 2013并打开了项目,现在可以正常使用了。


0

请允许我迟一点钟声:

我通过添加.gitignore文件并尝试提交更改来解决此错误。

我无法解释这是如何解决的,但是,这发生在一个全新的git存储库上。我一直在另一个存储库上使用Git和VS,这在开始时就有一个.gitignore文件,而我和团队中的任何人以前都没有这个问题。


0

更改“ Microsoft Git Provider”有效,但是我想要一个永久的解决方案。

我已经在使用GIT,并在.gitignore中包含了所有ReSharper内容。我使用的是VS2015。当我更新到最新版本的ReSharper 2017.1.3时,此问题开始发生。

我备份了我的解决方案文件夹(称为“ repo_backup”),然后从git克隆了我的repo。一切恢复正常。我将更改复制到了新的重新克隆的仓库中,删除了repo_backup,然后继续前进。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.