Каталог проекта Visual Studio 2015 Database Project содержит файл с расширением jfm

Предполагая, что у нас есть проект базы данных под названием MyDatabase, тогда в корне каталога проекта появится файл с именем MyDatabase.jfm.

  • Он заблокирован только при открытии проекта в Visual Studio
  • Это двоичный файл
  • Он появился только недавно (последние пару дней).

Я выполнил поиск Google, который не предложил никакого понимания. Есть некоторые ссылки на какое-то старое программное обеспечение, но большинство результатов - спам/троянская программа. Я также посмотрел в SO, но это тоже не принесло никаких результатов.

Кто-нибудь знает, что это такое и почему он там?

План состоит в том, чтобы добавить его в файл gitignore для Visual Studio, но мне нужно знать, что он сначала представляет PR...

UPDATE

Теперь это нарушает вид изменений Team Explorer. В окне "Вывод" в окне "Вывод" не отображаются изменения:

Снимок экрана с вкладки вывода

Таким образом, я добавлю файл в файл .gitignore и отправлю PR. Было бы полезно в конечном итоге узнать, что это за файл и откуда оно взялось...

Ответ 1

Это проблема, вызванная механизмом ESENT, на который опирается добавление SQL-проектов в новый файл. Это новая функция в выпуске Windows 10 Anniversary Edition, чтобы избежать потери данных, но факт, что SQL-проекты хранят файл кэша .dbmdl в корне проекта, означает, что этот заблокированный файл добавлен в элемент управления Git.

Примечания:

  • A pull request, чтобы исправить это в GitIgnore, был принят, и команда Visual Studio работает над включением этого в будущие обновления. Это гарантирует, что для новых проектов файл .gitignore содержит .jfm, и проблема не будет возникать.
  • Основная команда SSDT работает над решением этой проблемы в будущем обновлении, но на данный момент лучшим решением является добавление вручную, как обсуждалось в комментариях.

Раскрытие информации. Я работаю над командой SSDT для Microsoft.

Ответ 2

Вынос других людей...

  • Добавьте *.jfm к вашему .gitignore

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

  • Вам может потребоваться запустить git rm --cached *.jfm