使いたいモジュールがgiyHubとかにあればgitsubmoduleでプロジェクトに取り込むことが多いのですが、プロジェクトによっては取り込んだモジュールを少しカスタマイズしたいとかって事が結構あります。
そんな時大元のリポジトリをForkしてカスタマイズしたものをgitで管理したくなるものです。そうするのであれば、submoduleで追加した子を一回消して再度Forkしたgitから取り込む方法もありますが、うっかり既にカスタマイズしちゃったよ!! なんてこともあるのです。まさに今!
既に手を加えてしまっているので、どうにかsubmoduleの向いているurlを変更できれば乗り切れそうです。
gitsubmodule関係のことは.gitmodules
というファイルに書かれているので、ここに書かれているパスを変更します。
[submodule "lib/neko"] path = lib/neko url = git@github.com:chaika-design/forked.git // Forkしたブランチに変更する
.git/config
内にもsubmoduleのパスが書かれているのですが、これは次のコマンドを打てば.gitmodules
に書かれたurlに合わせて更新してくれます。
$ git submodule sync Synchronizing submodule url for 'lib/neko'
[参考にしました]