【问题标题】:Visual Studio Online Git - How to make sure /packages are ignored?Visual Studio Online Git - 如何确保 /packages 被忽略?
【发布时间】:2013-11-15 20:48:58
【问题描述】:

我的.gitignore 还在工作吗?我在其中添加了 packages 文件夹,但它仍然希望在每次提交时提交我的所有包。

我目前正在做的是在每次提交时排除包文件夹,这太可怕了。是我遗漏了什么还是 Visual Studio/Visual Studio Online Git 系统中的错误?

.gitignore

# NuGet Packages Directory
## TODO: If you have NuGet Package Restore enabled, uncomment the next line
packages/

图片

【问题讨论】:

    标签: git visual-studio gitignore azure-devops


    【解决方案1】:

    您的.gitignore 应该可以工作,因为根据to the FAQ,TFS 2013 中的“Included changes”并不意味着阶段性更改:

    如果您是经验丰富的 Git 用户,您可能已经注意到 Visual Studio 处理更改的方式与命令提示符不同。
    您可能想知道“包含的更改”部分是否包含您的分阶段更改
    事实上,Visual Studio 通常会为你绕过 Git 阶段。 当您提交更改时,Visual Studio 会同时暂存并提交它们
    当您将文件添加到 Git 存储库时会发生一个例外; Visual Studio 确实进行了这种更改。

    因此,如果您添加了一个文件,您可能需要在命令行中检查 git 状态,然后对该文件执行 git rm --cached

    但如果不添加任何文件,这很可能是当前的错误,如“TFS/Git extensions seems to ignore .gitignore”所示。

    【讨论】:

      【解决方案2】:

      @VonC 给出了您可能需要的答案。

      如果您在添加/编辑 .gitignore 文件之前已经提交了包文件夹,那么这些包将是“跟踪文件”。无论 .gitignore 文件如何,Git 都会更新它们。要排除软件包,您需要将它们从索引和存储库中删除。

      在命令提示符下,您可以使用git rm -r --cached packages/ 从索引中删除软件包,同时将它们保留在您的工作文件夹中。当您进行提交时,这些文件也将从存储库中删除。

      【讨论】:

      • git 命令正是我要找的。谢谢理查德!
      【解决方案3】:

      有时它会发生在 Visual Studio Git 插件中。 您只需要修复它:

      1. 在“包含的更改”部分,右键单击“包”
      2. 点击“全部排除”
      3. 在“排除的更改”部分,右键单击“包”
      4. 点击“撤消”

      这些操作将帮助您解决问题

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-04-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-07-25
        • 2015-04-01
        相关资源
        最近更新 更多