7

リポジトリのサブモジュールとして外部リポジトリを追加しようとしているので、次の手順に従いました。

git submodule add git:... vendor
git submodule init
git submodule update

それから私は疲れました:

git submodule init vendor
git submodule update vendor

追加しているサブモジュールにはサブモジュールがあり、サブモジュールのサブモジュールはチェックアウトされているように見えますが(つまり、ハードドライブにファイルが表示されています)、サブモジュール自体のファイルはチェックアウトされていません。

私が間違っていることについて何か考えはありますか?

これは私がサブモジュールとして追加しようとしているリポジトリであり、srcそのディレクトリは、サブディレクトリとファイルまたはと一緒に、チェックアウト/クローンに表示されるすべてのものsrcですが、たとえば、readmeファイルはありません。

4

1 に答える 1

12

gitバージョン1.6.5以降、--recursiveおよび--initオプションを使用git submodule updateして、サブモジュールが再帰的に初期化および更新されるようにすることができます。したがって、あなたの例では、次のことが私のために機能します:

$ git submodule add git://github.com/jbalogh/zamboni-lib.git vendor
remote: Counting objects: 7001, done.
remote: Compressing objects: 100% (5985/5985), done.
remote: Total 7001 (delta 1137), reused 6337 (delta 736)
Receiving objects: 100% (7001/7001), 14.88 MiB | 1.99 MiB/s, done.
Resolving deltas: 100% (1137/1137), done.
$ git submodule update --init --recursive
[... lots of output ...]

それがお役に立てば幸いです。

于 2010-11-14T11:13:33.257 に答える