[this intelligent life]

Blog Post

Git Changes Not Detected in an SSDT Project

Mark Wojciechowicz • Apr 18, 2017

This issue affects only database projects

I was setting up an SSDT solution in git at a new client, when I discovered a periodic issue in which my changes did not appear in the team explorer window. I knew full well I had made changes, and when I ran git status from the command prompt the unstaged changes were listed. I thought something was wrong with my software install, either with git for windows or visual studio, but it turned out to be another issue altogether. There is a discussion about it here:

http://stackoverflow.com/questions/37704514/visual-studio-2015-database-project-directory-contains-a...

The short answer is that a file with the extension .jfm is used by SSDT for processing and is not essential for source control. This file gets locked by the Esent engine (also used in windows) and blocks git from operating correctly. The file should be added to gitignore and removed from the repo. Once done, team explorer works correctly again.

For the sake of putting this information somewhere, here is what I have in the gitignore file (this is targeted for an MSBI application):

  • *.suo
  • *.user
  • *.meta
  • *.obj
  • *.tmp
  • *.log
  • *.dbmdl
  • *.jfm

  • #Project Folders
  • [Bb]in/
  • [Oo]bj/
  • [Ll]og/
  • .vs/

  • #Nuget Packages
  • *.nupkg
  • **/packages/*
  • !**/packages/build/

  • # MSTest test Results
  • [Tt]est[Rr]esult*/
  • [Bb]uild[Ll]og.*

  • # NUNIT
  • *.VisualState.xml
  • TestResult.xml

  • # Visual Studio cache files
  • *.[Cc]ache
  • !*.[Cc]ache/

  • *.rdl.data
  • *.bim.layout
  • *.bim_*.settings

Share by: