Visual Studio gitignore和mdf,ldf文件

Cra*_*aig 14 git visual-studio-2010 gitignore

我有一个生成这些文件并添加到gitignore的数据库项目.然而,它们似乎没有被忽略,我需要在提交之前将它们还原,非常烦人.这些文件仍被VS锁定,这是一个问题吗?

#
# Windows and Mac OS X Temp Cache Files
#
[Tt]humbs.db
*.DS_Store

#
#Visual Studio files
#
*.[Oo]bj
*.user
*.aps
*.pch
*.vspscc
*.vssscc
*_i.c
*_p.c
*.ncb
*.suo
*.tlb
*.tlh
*.bak
*.[Cc]ache
*.ilk
*.log
*.lib
*.sbr
*.sdf
*.dbmdl
*.mdf
*.ldf
*.Database.dbmdl
ipch/
obj/
[Bb]in
[Dd]ebug*/
[Rr]elease*/

#
#Tooling
#
_ReSharper*/
*.resharper
[Tt]est[Rr]esult*

#
#Project files
#
[Bb]uild/

#
#Subversion files
#
.svn

#
# Microsoft Office Temp Files
#
~$*

#
# YoureOnTime specific files
#
YoureOnTime.Database.dbmdl


# End of File
Run Code Online (Sandbox Code Playgroud)

eck*_*kes 23

我需要在提交之前还原它们

表示它们已经过版本化并在使用.gitignore 添加git add.

两种可能的解决方

  1. 暂时将它们从你的.gitignore,然后
    git rm --cached -- *.mdf
    git rm --cached -- *.ldf.
    这将从索引中删除文件,同时将它们保留在磁盘上.完成后,
    git commit -m "removing crap from repo"恢复你的.gitignore.

  2. 如果你不想玩你的.gitignore,你可以使用update-index:
    git update-index --assume-unchanged -- *.mdf
    git update-index --assume-unchanged -- *.ldf.
    这将迫使git将文件视为未更改,即使它们是.