[解決済み】Git リポジトリのサブモジュールを一覧表示する
2022-03-31 14:24:39
質問
Git リポジトリに複数のサブモジュールが入っています。の後に、すべてのサブモジュールの名前をリストアップするにはどうしたらよいでしょうか。
git submodule init
を実行しましたか?
は
git submodule foreach
コマンドでサブモジュールの名前を echo することもできますが、これはサブモジュールがチェックアウトされたときにのみ動作し、init ステップ以降ではまだ動作していません。サブモジュールがチェックアウトされるまでには、さらに多くのステップが必要で、サブモジュールの名前をスクリプトにハードワイヤーで書き込むようなことはしたくありません。
では、現在登録されていて、まだチェックアウトされていない全てのサブモジュールの名前を取得するGitコマンドはあるのでしょうか?
どのように解決するのですか?
と同じ仕組みを使うことができます。
git submodule init
はそれ自身を使う、つまり
.gitmodules
. このファイルでは、各サブモジュールのパスとそれが参照するURLを列挙しています。
例えば、リポジトリのルートから
cat .gitmodules
は内容を画面に表示します。
cat
).
.gitmoduleファイルはGitの設定フォーマットを持っているので、git configを使ってこれらのファイルをパースすることができます。
git config --file .gitmodules --name-only --get-regexp path
はすべてのサブモジュールのエントリを表示し、さらに
git config --file .gitmodules --get-regexp path | awk '{ print $2 }'
の場合、サブモジュールのパスそのものを取得するのみです。
関連
-
[解決済み] Git で直近のローカルコミットを取り消すには?
-
[解決済み] Gitブランチをローカルやリモートで削除するには?
-
[解決済み] git pull」と「git fetch」の違いは何ですか?
-
[解決済み] コミット前に 'git add' を取り消すにはどうすればよいですか?
-
[解決済み] リモートのGitブランチをチェックアウトするには?
-
[解決済み] Git リポジトリを以前のコミットに戻すにはどうすればよいですか?
-
[解決済み] Git リポジトリでのマージの衝突を解決するには?
-
[解決済み] リモート Git リポジトリの URI (URL) を変更するには?
-
[解決済み] サブモジュールを含む "git clone "の方法は?
-
[解決済み】ローカルのGitブランチの名前を変更するには?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Gitのエラー。リモートリポジトリへの接続時に「Host Key Verification Failed」。
-
[解決済み】なぜ「git commit」は私の変更を保存しないのですか?
-
[解決済み】Git Push Error: リポジトリデータベースにオブジェクトを追加する権限が不足しています。
-
[解決済み】マージが終了していません(MERGE_HEADは存在します)。
-
[解決済み] TortoiseGitで「git did not exit cleanly (exit code 128)」というエラーを解決するには?[クローズド]
-
[解決済み] git ls-remote と git ls-remote origin の違い。
-
[解決済み] fatal: bad revision "とはどういう意味ですか?
-
[解決済み] ssh-keygen' は内部コマンドまたは外部コマンドとして認識されません。
-
[解決済み] サブモジュールでないパスに対するサブモジュールのマッピングが .gitmodule に見つからない
-
[解決済み】cutコマンドでスペースをデリミターとして使う