Git: 致命的: パス仕様がサブモジュール内にあります 質問する

Git: 致命的: パス仕様がサブモジュール内にあります 質問する

私は、TravisCIを使ってHakyllの静的サイトを自動的にデプロイしようとしています。このガイド

私のリポジトリの設定方法は次のとおりです。ソース ブランチがあり、そこには hakyll ファイルと markdown ファイルが含まれています。このブランチは_site、サブモジュールとして設定されたディレクトリに html をビルドし、ブランチにリンクしますmaster

問題なくサイトを構築し、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

これは何が原因で、どうすれば回避できるのでしょうか?

リポジトリを表示できますここ

ベストアンサー1

git からディレクトリを削除して再度追加すると、うまくいきました:

 git rm --cached directory
 git add directory

これは、メインの git プロジェクトに.git追加したいために意図的にディレクトリを削除した場合に機能します。私の場合は、git で拡張機能をクローンし、あまり考えずに実行しました。Git はサブモジュールを作成することに決めましたが、これは気に入りませんでした。そのため、 を削除してに遭遇しました。サブモジュールを削除する方法がわかりませんでした。上記の 2 行で修正しました。directorygit add .directory/.gitGit: fatal: Pathspec is in submodule

おすすめ記事