サブモジュールをチェックアウトする
「サブモジュール」をチェックアウトします。チェックアウト対象の「コミットオブジェクト」は、「コミットID」が指す「コミットオブジェクト」です。
1.サブモジュールの状態
「サブモジュール」の状態を見てみます。以下のように、チェックアウトされていない「サブモジュール」が2つあることが分かります。
ちなみに、これらの「サブモジュール」はクローンもされていないため、更新実行時に「サブモジュール」のクローンも行われます。
2.スーパープロジェクトのワーキングディレクトリー
「スーパープロジェクト」の「ワーキングディレクトリー」を見てみます。以下のように、「サブモジュール」の「ワーキングディレクトリー」が配置されています。
各「サブモジュール」の「ワーキングディレクトリー」の中身は、以下のように空になっています。
3.コマンドの実行
コマンドのオプションは、以下のオプションを指定します。オプション |
---|
--checkout |
「端末」から、以下のコマンドを実行します。
コマンドの詳細は、「サブモジュールを更新するコマンドの説明」を参考にしてください。
ポイントは、赤字の箇所です。
git submodule update --checkout
4.コマンドの実行結果
以下のように、各「サブモジュール」のチェックアウトが実行されます。また、これらの「サブモジュール」はクローンもされていないため、「サブモジュール」のクローンも行われています。
5.サブモジュールの状態
チェックアウト後の「サブモジュール」の状態を見てみます。チェックアウトが行われたため、「-」マークが取れています。
6.サブモジュールのワーキングディレクトリー
各「サブモジュール」の「ワーキングディレクトリー」の中身は、以下のようにチェックアウトされたファイル群が配置されています。7.サブモジュールのワーキングディレクトリーの状態
各「サブモジュール」の「ワーキングディレクトリー」の状態を見てみると、以下のように「分離したHEAD」になっています。8.サブモジュールのブランチの構成
各「サブモジュール」のブランチの構成を見てみると、以下のように「分離したHEAD」になっています。後は必要に応じて「サブモジュール」でチェックアウトを実行し、「HEAD」が既存のブランチを指すようにするか、「分離したHEAD」が指す「コミットオブジェクト」を起点にブランチを作成すると良いでしょう。