2016-11-15 7 views
-1

私は自分のvimの設定を保持するgitリポジトリを持っています。このツリーには、プラグインを含む他の人のreposを参照するいくつかのgitサブモジュールが含まれています。gitサブツリーが埋め込みサブモジュールを初期化できないのはなぜですか?

私はGNU stowで適切なドットファイルリポジトリを設定することに興味がありましたので、vim repoを統合する最善の方法はドットファイルリポジトリにサブツリーすることだと思いました。私のvimの設定が他の誰かからフォークされているので、私は自分のプラグインと設定を保存しながらアップストリームの変更を簡単にマージすることができると考えました。

git subtree add -P vim/.vim-files https:\\xx master --squashを使用して、サブツリーを自分のレポに正常に追加しました。結果のツリーは次のようになります。私はその後dotfiles/からgit submodule initを実行すると、それはfatal: No url found for submodule path 'vim/.vim-files/plugins/submodule1' in .gitmodulesで失敗

dotfiles/ 
├── .git 
└── vim/ 
    ├── .vimrc 
    └── .vim-files/ <= THE SUBTREE 
     ├── .gitmodules 
     └── plugins/ 
      └── submodule1/ 

。 URLが存在し、スタンドアロンで使用されている場合、サブツリーのレポはサブモジュールに問題ありません。

見知らぬ人は、.vim-filesにcdしてそこでコマンドを実行すると、エラーは次のようになります。fatal: No url found for submodule path 'vim/.vim-files/vim/.vim-files/plugins/submodule1' in .gitmodules

誰でもこの現象の原因を説明できますか?サブツリーとサブモジュールが互換性がないか、バグに遭遇しましたか?

答えて

1

同じエラーが発生しました。 gitがそれらが相対的であると予想するとき、それが完全な経路でサブモジュールによって引き起こされたように見えます。コメント用の私のドットファイルレポの警告コメントを参照してください: https://github.com/palavrov/config#warning

関連する問題