Visual Studio 2015数据库项目目录包含一个扩展名为jfm的文件

假设我们有一个名为MyDatabase的数据库项目,那么一个名为MyDatabase.jfm的文件出现在项目目录的根目录中。

  • 当项目在Visual Studio中打开时,它被独占锁定
  • 它是一个二进制文件
  • 它最近才开始出现(过去几天)

我做了谷歌搜索,没有提供任何见解。有一些引用到一些旧软件,但大多数结果是垃圾邮件/木马软件。我也研究过SO,但也没有任何结果。

有人知道它是什么,为什么在那里吗?

计划是将它添加到gitignore文件的Visual Studio,但我需要知道提交PR的第一步是什么…

更新

这现在打破了Team Explorer Changes视图。“输出”窗口中显示的如下内容没有任何变化:

 error from the output tab的截图

因此,我将把文件添加到.gitignore文件和提交申报表。如果最终能知道这个文件是什么,它来自哪里,那就太好了……

57436 次浏览

这是由SQL项目添加到新文件中所依赖的ESENT引擎引起的问题。这是Windows 10周年纪念版中的一个新功能,以避免数据丢失,但SQL项目将.dbmdl缓存文件存储在项目根目录下,这意味着这个锁定的文件被添加到Git源代码控制中。

注:

  • 在GitIgnore中修复这个问题的把请求已经被接受,Visual Studio团队正在努力将其包含在未来的更新中。这将确保对于新项目,.gitignore文件包含.jfm,这样问题就不会发生
  • 核心SSDT团队正在努力在未来的更新中提供解决方案,但目前最好的解决方案是手动添加,如评论中所述。

信息披露:我在微软的SSDT团队工作。

从其他人那里得到的启示是……

  • *.jfm添加到你的.gitignore

(在powershell中,Add-Content .\.gitignore *.jfm)

  • 你可能需要运行git rm --cached *.jfm