Git:致命:Pathspec 在子模块中

2024-01-12

我正在尝试让 TravisCI 自动部署我的 Hakyll 静态站点,根据本指南 http://timbaumann.info/posts/2013-08-04-hakyll-github-and-travis.html.

这是我的存储库的设置方式。我有我的源分支,其中包含我的 hakyll 和 markdown 文件。它将 html 构建到_site目录,它被设置为子模块,链接到我的master branch.

我建立网站没有问题,然后cd进入_site目录。然而,当我尝试git add ./*新生成的 HTML 文件,我收到以下错误:

fatal: Pathspec './about.html' is in submodule '_site'

当我尝试时git add --all,我收到此错误:

git: pathspec.c:317: prefix_pathspec: Assertion `item->nowildcard_len <= item->len && item->prefix <= item->len' failed.

/home/travis/build.sh: line 245: 1566 Aborted git add --all

造成这种情况的原因是什么?我该如何避免这种情况?

您可以查看存储库here https://github.com/JoeyEremondi/JoeyEremondi.github.io/tree/source.


从 git 中删除目录并再次添加它对我有用:

 git rm --cached directory
 git add directory

如果您有意删除了此操作,则此操作有效.git目录,因为你想添加directory到你的主 git 项目。在我的具体情况下,我让 git 克隆了一个扩展并运行git add .无需考虑太多。 Git 决定创建一个我不喜欢的子模块。所以我删除了directory/.git并遇到了Git: fatal: Pathspec is in submodule。我找不到如何删除子模块的东西。用上面两行固定。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Git:致命:Pathspec 在子模块中 的相关文章

随机推荐