1

私はgitを初めて使用しますが、gitサブモジュールを試す前に、ドキュメントや落とし穴をよく読んでいます。私は、おそらく素朴に、gitのバグだと感じる問題を抱えています。

プロジェクトがあり、そのルートディレクトリに、mypluginというサブモジュールがあるpluginsフォルダーがあります。で追加しました

git submodule add xxxxxgithub.com/me/myplugin.git plugins/myplugin

これはうまくいきました。すべてが約1週間正常に機能しています。私が使用しているフレームワークは、プラグイン内のビューをオーバーライドするためのサポートを備えています。それらはに保存する必要があります

views/plugins/myplugin/customviewfile.  

問題は、gitがオーバーライドフォルダも次の場所にあると見なしていることです。

 plugins/myplugin 

Gitはviews/plugins / mypluginディレクトリ内で何もコミットせず、ファイルを追跡しません。何をしても無視することはできません。Githubでは、サブモジュールであることを示す緑色の矢印が表示されます。ブランチを切り替えると、そのディレクトリがサブモジュールと同じように引き継がれます。

私は1時間以上髪を抜いていて、何の進歩もありません...どんな助けも大歓迎です!

4

2 に答える 2

1

サブモジュールの操作方法について知っておく必要があることのほとんどは、ここに要約されています

サブモジュールをビューに直接追加しましたか?はいの場合、何がviews/.gitmodules含まれていますか?
追加したときに、メインプロジェクト(プラグインのすぐ上)にもコミットしましたか?

しかし、ビューがリポジトリの別のクローンであり、plugins/mypluginサブモジュールが表示されると予想される場合は、次のようにします。

  • git submodules init
  • git sumodules update


OPは追加します:実際の問題はディレクトリでしたがplugins、ある時点では無視され(rmしてから.gitignoreファイルに追加され)、サブモジュールを検出できなくなりました。

于 2010-04-30T10:56:27.157 に答える
0

私はそれを取り戻します...それは私でした、どうやら私はそのフォルダ内の実際のプラグインを何らかの方法でコミットしたに違いありません(おそらく誤ってフォルダを移動した)私はそれをしたことを覚えていません..しかしとにかく私はそれをgithubの歴史の中で見つけましたコミットします。私はviews/pluginsディレクトリをgitrm-rfしましたが、今は機能しています

于 2010-04-30T10:57:59.133 に答える