多数のサブモジュールを使用する github リポジトリがあります。それらをローカルで変更して、リポジトリにプッシュできるようにしたい (そのため、読み取り/書き込みリポジトリの URL を使用する必要があります)。
ただし、リポジトリを提供するために github の gh-pages サービスも使用する必要があり、.gitmodules
ファイルに読み取り専用の URL が必要なようです。
両方の長所を活かすことはできますか?
これは間違いなく可能であり、サポートされています。
git submodule init
git-submodule マンページから:
初期化
サブモジュールを初期化します。つまり、.gitmodules にある各サブモジュール名と URL を .git/config に登録します。また、submodule.$name.update の値を .git/config にコピーします。.git/config で使用されるキーは submodule.$name.url です。このコマンドは、.git/config 内の既存の情報を変更しません。次に、ローカル設定用に .git/config でサブモジュールのクローン URL をカスタマイズし、git サブモジュールの更新に進むことができます。サブモジュールの場所をカスタマイズするつもりがない場合は、明示的な init ステップなしで git submodule update --init を使用することもできます。