【问题标题】:Visual Studio Team Explorer is listing changes to files I didn't makeVisual Studio Team Explorer 列出了对我没有做的文件的更改
【发布时间】:2016-11-26 19:48:15
【问题描述】:

例如,我刚刚启动了 Visual Studio,发现对我从未打开过的文件进行了 28 处更改。当我尝试撤消更改(右键单击并选择撤消)时,我会看到一个对话框进行确认。我点击是,然后什么都没有发生。

我的一位同事说他有时会遇到这种情况,除了重新开始之外,他没有找到解决方案。既然如此令人不满意,有其他人知道为什么会发生这种情况,或者如何解决吗?

我在 Windows 10 上使用 Visual Studio 2015

【问题讨论】:

  • 告诉我你的行尾。
  • 我不知道如何找到这方面的详细信息,但我很乐意!另外,我也想到了这个想法,但为什么它会选择 28 个随机文件来更改行尾呢?我什至没有打开它们。
  • 你有.gitattributes吗?你有 core.autocrlf 设置什么吗?你读过help.github.com/articles/dealing-with-line-endings 吗?
  • 嘿,对不起,我没有早点注意到你的评论!是的,我查看了行尾。这绝对是所有已更改文件的问题。我现在的问题是我无法撤消这些更改。我现在看到了如何继续前进而不会再次遇到这个问题(希望如此),但是我该如何解决手头的问题呢?有什么想法吗?
  • 是的,这是另一个长期未解决的问题。我没有看到 git 的这个问题,但经常使用 TFS。答案通常是关于行尾的问题。嘿!问题不在于行尾。问题在于VS比较器错误,它不知道管理这个问题。这是修复此问题的几行代码,但微软宁愿将 EMOJI 添加到 Windows。这个问题在 VS 2019 中也存在,即使所有的行尾都是在 VS 中创建的,而无需更改 VS 选项。

标签: git tfs visual-studio-2015


【解决方案1】:

正如 Edward Thomson 所说,这可能是行尾问题。

您可以运行git diff -w 命令来验证文件中真正发生的变化,以了解您是否真的有行尾问题。

-w 选项告诉 git 忽略空格和行尾,如果此命令显示没有差异,您可能是行尾规范化问题的受害者。

详细解决方法请查看此博客:Git showing file as modified even if it is unchanged

还可以看看 Stackoverflow 中的这个问题:Trying to fix line-endings with git filter-branch, but having no luck


更新

要撤消挂起的更改,请尝试使用以下解决方法,在 VS2013 中打开解决方案并使用 VS2013 在 Team Explorer 中撤消挂起的更改。最后在VS2015中重新打开它。待处理的更改将消失。

详情请参考MSDN中的类似问题:VS2015 and TFS Git – can’t undo changes

【讨论】:

  • 你是对的, git diff -w 没有显示 git diff 的变化。这令人沮丧,但感谢您提供的信息!
  • @jemtan990 尝试使用 GIT 命令 比如这个链接stackoverflow.com/questions/14075581/… 提到的你也可以尝试撤消VS2013中的未决更改,更多详细信息请参阅我的更新答案.
  • 使用 VS2013 似乎有效,但当我在 2015 年再次打开它时,添加了更多更改。 MSDN 中的引用更有效,但 2015 年再次开放增加了 5 个新变化。似乎每次我认为我已经做出了真正的改变,无论是在 bash、gui、tortoise 等方面,VS2015 都会找到一种继续添加的方法。
猜你喜欢
  • 2014-10-12
  • 2023-03-02
  • 1970-01-01
  • 1970-01-01
  • 2018-06-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多