【问题标题】:.gitignore is not ignoring large directories [duplicate].gitignore 没有忽略大目录[重复]
【发布时间】:2024-04-14 21:50:01
【问题描述】:

我的 git 存储库中有大量文件夹,为了发布它,我需要减小存储库的大小,所以我使用的是 .gitignore 文件。

在我的 .gitignore 文件中,我忽略了两个文件夹。一个文件夹包含 boost c++ 库,另一个包含 C++ Qt 库。

两者都很庞大。但是,当我在 .gitignore 文件中指定排除这些文件夹及其内容时,它实际上会增加要推送的对象数量。

这是我的.gitignore

boost_1_60_0/
Qt/
ERRORLOG.rtf
CHANGELOG.rtf

关于可能导致此问题的任何想法?

【问题讨论】:

  • 您可以在文件系统中为每个目录添加一个 .gitignore 文件,但您也可以执行 {directory name}/**/* 以排除该文件夹中的所有内容。
  • {directory name}/**/* 似乎不起作用。
  • 我应该将目录名称括在括号中,还是您的方式来分隔文件夹名称

标签: c++ git qt boost


【解决方案1】:

您必须添加xxx/**,否则它将被视为文件而不是文件夹。

文件夹模式是/**

如果您已将文件添加到暂存区域,则必须使用 git rm --cached <pattern> 将其删除。

这里有一个或多或少相同问题的非常相似的问题:

.gitignored files still shown in RStudio

【讨论】: