git - 忽略子文件夹中的 .git 文件夹

标签 git

是否可以将带有 .git 文件夹的子文件夹添加到存储库,而 Git 不将其视为子模块?我尝试了不同的方法来忽略该 .git 文件夹,但到目前为止没有任何效果。

我在/.gitignore 中尝试过:

/vendor/**/.git/

..并在/vendor/.gitignore 中:

.git/

我想忽略的 .git 文件夹在/vendor/foo/bar/中。

最佳答案

您可以通过先直接添加一些(任何)内部内容来做到这一点。 Git 在搜索新遇到的目录时通过遇到 .git 条目来检测子模块,但如果您给它一个实际路径以在该目录中查找,它不会搜索。

所以

git add path/to/some/submodule/file     # bypass initial search that detects .git
git add path/to/some/submodule          # now git's index has it as ordinary dir

关于git - 忽略子文件夹中的 .git 文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22685170/

相关文章:

git - Tortoise Git 中 "Force"和 "Override branch if exists"的区别

ruby - 尝试使用现有 git 存储库上传 Sinatra 应用程序时出现 "Heroku push rejected, no Cedar-supported app detected"

django - 如何将 django 项目拆分为单独的已创建应用程序?

python - 使用 gitpython 编辑提交

Gitlab 多项目 CI

git - 为什么 Git 在一次 merge 上执行自动提交,而不是在另一次 merge 上执行自动提交?

git - 您如何配置 commitlint 以忽略某些提交消息,例如包含字符串 "WIP"的任何提交消息?

Git 只抓取一个目录

git - 致命 : could not read Username for, 没有这样的设备

git - 如何处理文件被添加到 git 中的错误提交?