我正在尝试为使用NuGet的Visual Studio项目创建.gitignore。它目前包含:
\packages/*
!packages/repositories.config
这不会忽略文件夹中的任何内容。一切都在添加上演。我也尝试过:
packages/
!packages/repositories.config
这会忽略packages文件夹中的所有内容,但不包含packages / repositories.config。
我做错了什么?
答案 0 :(得分:112)
/packages/
!packages/repositories.config
您还可以在packages文件夹中添加.gitignore
:
*
!repositories.config
!.gitignore
答案 1 :(得分:32)
我遇到了同样的问题。
以上解决方案均不适合我。我认为维护多个.ignore文件是一个糟糕的解决方案。
这就是我解决它的方式。
**/packages/*
!**/packages/repositories.config
组合两个星号将匹配任何文件夹字符串。我认为遗漏星号会产生同样的效果,但显然我(我们)错了,因为它似乎没有用。
官方.gitignore template for Visual Studio建议采用以下解决方案:
# NuGet Packages
*.nupkg
# The packages folder can be ignored because of Package Restore
**/packages/*
# except build/, which is used as an MSBuild target.
!**/packages/build/
# Uncomment if necessary however generally it will be regenerated when needed
#!**/packages/repositories.config
编辑:您可以使用https://www.gitignore.io为您喜欢的项目生成.ignore文件: - )
答案 2 :(得分:11)
答案 3 :(得分:8)
我发现这个简单的模式有效。
/packages/*/
它应该忽略根目录包目录中的所有目录,但包括那里的所有文件。不确定除了repositories.config之外的其他文件可能会出现在那里,还是应该包含在存储库中。
答案 4 :(得分:0)
仅对我而言这有效:
**/packages/**
答案 5 :(得分:0)
如果您想对 ALL NUGET Temp 工件
正确执行此操作将此代码添加到您的 .gitignore
# Ignore all my NuGet temp Packages
*.nupkg
# NuGet Symbol Packages
*.snupkg
# The packages folder can be ignored because of Package Restore
**/[Pp]ackages/*
# except build/, which is used as an MSBuild target.
!**/[Pp]ackages/build/
# Uncomment if necessary however generally it will be regenerated when needed
#!**/[Pp]ackages/repositories.config
# NuGet v3's project.json files produces more ignorable files
*.nuget.props
*.nuget.targets