.gitignore NuGet排除软件包/包含软件包/ repositories.config
我正在尝试为使用NuGet的Visual Studio项目创build.gitignore。 它目前包含:
\packages/* !packages/repositories.config
这不会忽略文件夹中的任何内容。 一切都上演了一个添加。 我也试过了:
packages/ !packages/repositories.config
这会忽略packages文件夹中的所有内容,不包括packages / repositories.config。
我究竟做错了什么?
/packages/ !packages/repositories.config
您还可以在软件包文件夹中添加一个.gitignore
:
* !repositories.config !.gitignore
我面临同样的问题。
上述解决scheme都不适合我。 我认为这是一个糟糕的解决scheme来维护多个.ignore文件。
这就是我解决它的方法。
**/packages/* !**/packages/repositories.config
合并两个星号将匹配任何string的文件夹。 我以为留下星号会有相同的效果,但显然我(我们)是错误的,因为它似乎不工作。
Visual Studio的官方.gitignore模板推荐以下解决scheme:
# 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文件:-)
这对我有用。
#NuGet packages !packages/repositories.config
(和@ manojlds的答案一样,除了删除了第一行中的星号,这对我没有任何作用。)
我发现这个简单的模式的作品。
/packages/*/
它应该忽略根包目录中的所有目录,但在其中包含所有文件。 不知道除了repositories.config以外还有哪些其他文件可能会出现,或者它们是否应该包含在存储库中。
另请参阅.gitignore语法:bin vs bin / vs bin / * vs bin / **