【问题标题】:How to Exclude NuGet Content from Source Control如何从源代码管理中排除 NuGet 内容
【发布时间】:2016-04-09 22:18:56
【问题描述】:

我知道 NuGet 包(至少现在是这样)不应该包含在版本控制中。我应该如何排除一个包添加到我的项目中的文件?

例如:我有一个使用引导 NuGet 包的 .NET MVC 项目。它将一些 CSS、JS 和字体文件分别添加到内容、脚本和字体中。这些文件是否应该包含在我的源代码管理中?如果不是,那么忽略它们的最佳方法是什么? (我在这个特定项目中使用 GIT。)

【问题讨论】:

    标签: git version-control nuget


    【解决方案1】:

    一般而言,您的源代码管理工具不应跟踪生成的文件。 Here 是一个很好的问题,它解决了这样做的利弊。

    您可以通过在存储库的根目录创建 .gitignore 文件来忽略这些文件和目录。

    按照上面的示例包,您可以通过将其添加到您的 .gitignore 文件来忽略该内容:

    Content
    Scripts
    fonts
    

    Here 是更多关于使用 Git 忽略文件的文档,.gitignore

    您还可以根据 VisualStudio project uses 的内容填充您的 .gitignore。

    【讨论】:

    • 几乎正是我想要的。我将在我想要包含在我的版本控制中的内容和脚本中包含非引导文件。您能否更新或增加您的答案来解决这个问题?
    • @ricksmt 这可能会变得很棘手,因为您需要编写一个聪明的模式来仅包含这些目录中的某些文件。在此处查看“模式格式”部分:git-scm.com/docs/gitignore。您是否考虑过将您的独特内容放在单独的目录路径中,然后在运行时将它们组合在一起?
    • 我认为这是可行的,但它将开发置于非传统的地方,我想避免这种情况。
    • 我要添加一条评论(主要是为我自己):我手动更改了 .gitignore 文件,但 Visual Studio 没有它。 This link 表示关闭 Visual Studio 并从 .git 文件夹中删除 ms-persist.xml,这样就解决了问题。
    【解决方案2】:

    您应该将其添加到您的 .gitignore 文件中。

    你有这个存储库:
    https://github.com/github/gitignore

    这是许多平台和语言的被忽略文件的官方 git 存储库。

    您也可以使用本网站为您生成文件:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-12-23
      • 2020-07-22
      • 2011-03-11
      • 1970-01-01
      • 2011-01-22
      • 2015-06-07
      • 2017-12-02
      • 1970-01-01
      相关资源
      最近更新 更多