[Git]サブモジュールを含んだリポジトリをクローンする

サブモジュールが含まれている Git のリポジトリをサブモジュールごとクローンする方法を説明していきます。

前提条件

Git は以下のバージョンを使用しています。

  • git : 2.24.2

サブモジュールの設定方法

.git があるリポジトリのディレクトリ上に「 .gitmodules 」というファイルを作成し、以下のようにサブモジュールの設定を行います。

[submodule "sample"]
    path = sample_dir
    url = http://github.com/user/sample.git

サブモジュールの名称とサブモジュールを格納するプロジェクト内のパスの情報、サブモジュールのリポジトリ情報を記述します。

サブモジュールを含むプロジェクトをクローンする

プロジェクトのクローン時にサブモジュールもクローンする

まだ、プロジェクトをクローンしていないのであれば、下記のコマンドを実行することでサブモジュールも同時にクローンすることができます。

$ git clone --recursive https://github.com/user/submodule.git

プロジェクトはクローン済みで後からサブモジュールをクローンする

既にプロジェクトはクローン済みでサブモジュールのみクローンする場合は下記のコマンドを実行すればサブモジュールをクローンすることができます。

$ git submodule update --init --recursive

最後に

プラグインなどを利用する場合に、 Github からクローンして使用することもあると思いますが、サブモジュールとして管理することで、コード管理をシンプルにすることができると思います。また、大規模なプロジェクトや部分的に異なる仕組みを利用した開発を行いたい場合にもサブモジュールを利用することでそれぞれのコードの見通しが良くなると思います。

コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です