当Git与Visual Studio解决方案(.sln)和项目一起使用时,我应该在.gitignore中包含哪些文件?
当前回答
正如另一张海报所提到的,Visual Studio将其生成为.gitignore的一部分(至少对于MVC 4):
# SQL Server files
App_Data/*.mdf
App_Data/*.ldf
因为你的项目可能是你的解决方案的一个子文件夹,而.gitignore文件存储在解决方案根目录中,这实际上不会触及本地数据库文件(Git在projectfolder/App_Data/*.mdf中看到它们)。为了解释这一点,我修改了这些行:
# SQL Server files
*App_Data/*.mdf
*App_Data/*.ldf
其他回答
为构建部署添加了InstallShield忽略。InstallShield是微软在Visual Studio Installer上的新方向,所以我们已经开始在所有新项目中使用它。添加的这一行删除了SingleImage安装文件。其他InstallShield类型可能包括DVD分发。您可能希望添加这些目录名或仅仅添加[Ee]xpress/以防止任何InstallShield LE部署文件进入repo。
下面是我们的.gitignore,用于VS2010 c#项目,使用安装盾LE和安装程序的SingleImage部署:
#OS junk files
[Tt]humbs.db
*.DS_Store
#Visual Studio files
*.[Oo]bj
*.exe
*.pdb
*.user
*.aps
*.pch
*.vspscc
*.vssscc
*_i.c
*_p.c
*.ncb
*.suo
*.tlb
*.tlh
*.bak
*.[Cc]ache
*.ilk
*.log
*.lib
*.sbr
*.sdf
ipch/
obj/
[Bb]in
[Dd]ebug*/
[Rr]elease*/
Ankh.NoLoad
#InstallShield
[Ss]ingle[Ii]mage/
[Dd][Vv][Dd]-5/
[Ii]nterm/
#Tooling
_ReSharper*/
*.resharper
[Tt]est[Rr]esult*
#Project files
[Bb]uild/
#Subversion files
.svn
# Office Temp Files
~$*
参见官方GitHub的“有用的。gitignore模板集合”。
Visual Studio的.gitignore可以在这里找到: https://github.com/github/gitignore/blob/main/VisualStudio.gitignore
这里的聚会很晚,但我也发现我使用以下方法。有些可能只用于在按到公共远程时隐藏敏感文件。
#Ignore email files delivered to specified pickup directory
*.eml
#Allow NuGet.exe (do not ignore)
!NuGet.exe
#Ignore WebDeploy publish profiles
*.Publish.xml
#Ignore Azure build csdef & Pubxml files
ServiceDefinition.build.csdef
*.azurePubxml
#Allow ReSharper .DotSettings (for non-namespace-provider properties)
!*.csproj.DotSettings
#Ignore private folder
/Private/
我明白这是一个老问题,还在分享一个信息。在Visual Studio 2017中,只需右键单击解决方案文件,并选择将解决方案添加到源代码控制
这将向源文件夹中添加两个文件。
.gitattributes .gitignore
这是最简单的方法。
您可以通过转到团队资源管理器中的设置视图,然后选择存储库设置来创建或编辑您的.gitignore文件。选择编辑你的。gitignore。
它会自动创建过滤器,忽略所有VS特定的构建目录等。
更多信息请看这里。
推荐文章
- 如何为构造函数定制Visual Studio的私有字段生成快捷方式?
- 为什么Visual Studio 2015/2017/2019测试运行器没有发现我的xUnit v2测试
- 为什么我需要显式地推一个新分支?
- 如何撤消最后的git添加?
- Rubymine:如何让Git忽略Rubymine创建的.idea文件
- Gitignore二进制文件,没有扩展名
- Git隐藏错误:Git隐藏弹出并最终与合并冲突
- Visual Studio复制项目
- 了解Git和GitHub的基础知识
- 没有。Git目录的Git克隆
- 如何在iis7应用程序池中设置。net Framework 4.5版本
- Git与Mercurial仓库的互操作性
- 忽略git中修改(但未提交)的文件?
- “git restore”命令是什么?“git restore”和“git reset”之间有什么区别?
- Git合并与强制覆盖