git clone
を--recursive
とすると、すべてのgitサブモジュールも取得できます。gitリポジトリに--recursiveを追加する
クローン作成時にこの魔法の旗を追加することを忘れてしまった場合は、どうすれば今すぐサブモジュールを手に入れることができますか?
さらに、再帰フラグを将来のクローンのデフォルトとしてどのように設定することができますか?
git clone
を--recursive
とすると、すべてのgitサブモジュールも取得できます。gitリポジトリに--recursiveを追加する
クローン作成時にこの魔法の旗を追加することを忘れてしまった場合は、どうすれば今すぐサブモジュールを手に入れることができますか?
さらに、再帰フラグを将来のクローンのデフォルトとしてどのように設定することができますか?
IIRC、 git submodule init
、 git submodule update
残念ながら、私はしかし、デフォルトで再帰を有効にするオプションが表示されません。あなたのレポのルートから
:
$ git submodule update --init --recursive
.gitmodulesファイルに見られるような値になる、ともに再帰的に必要がある場合は、それらを初期化し、任意およびすべての登録されたサブモジュールを更新します複雑なサブモジュール(それ自身のサブモジュールを持つサブモジュール)を作成し、それらも初期化して更新します。再帰的にデフォルトのクローニング作るために私の知っている
最も簡単な方法は、別名限り、常にオプションを追加するなど
$ git config --global alias.clone = 'clone --recursive'
でgit clone
をシャドウするだろう、私はそれは慣用的な方法だと思います。
'clone'コマンドをシャドウするのではなく、$ git config --global alias.cloner = 'クローン - 再帰的'コマンドを追加することをお勧めします。 – Abizern
'='マークを削除する必要があります: 'git config- -global alias.clone 'clone - recursive'' – ELLIOTTCABLE
注:この回答は***完全に間違っています***。 gitは既存のgitコマンドに "シャドウエイリアス"を許可しません。 'alias.clone'は完全に無視されます。 – Jez
エイリアス "clone"で "clone"を上書きすることはできないので、新しいエイリアス(Abizernの解決策)または " - 再帰的"です。
あなたはいつも再帰的なクローンを行い、シェルまたはgitのエイリアスを作成することができます。しかし、ここでは2つのステップで行うのが難しく思えるかもしれませんが、この方法では 'init'の後で' update'の前にconfigファイルのサブモジュールリポジトリのURLを変更できます。サブモジュールにプライベートレポジトリ用のURLが設定されているリポジトリで、これを公開URLに変更する必要があるリポジトリでは、これを行う必要があります。 – Abizern