8

作業ディレクトリのみでリポジトリのサブモジュールをダウンロードすることは可能ですか?

GitHub からリポジトリの tarball をダウンロードした場合、これはフォルダーのない浅いクローンと同等ですが.git、サブモジュールを作業ディレクトリに「ダウンロード」することはまったく可能ですか?

を試しgit init && git submodule update --initましたが、これはサブモジュールを初期化も更新もしません。.gitmodulesファイルは現在のディレクトリにあります。

更新: 質問の背景: Travis CIでリポジトリをチェックアウトするために tarball を使用したいのですが、git サブモジュールを使用する人もいます。したがって、「Git サブモジュールを使用しないでください」というのは良い答えではありませんが、その答えは保守可能なものである必要もありません。コードがチェックアウトされ、サブモジュールが初期化されたフォルダーが必要なだけです。後でさらに変更をプルダウンできるようにする必要はありません。

4

1 に答える 1

2

wget/tar アプローチを組み合わせても、git initサブモジュールの初期化には役立ちません。

.の後はすべて追跡されませんgit init

次の前に、すべてを追加してコミットする必要があります。

git submodule update --init --recursive --force

そのgit submoduleコマンドは「機能」しますが、空のディレクトリしか作成しません。これは、.aによって作成された特別なエントリ (160000)
が tar ファイルに含まれていなかったためです。git submodule add

これらのサブモジュールを再宣言する必要があります。

C:\prog\git\ReactiveCocoa-2.0-development>git submodule add --name xcconfigs https://github.com/jspahrsummers/xcconfigs.git external\xcconfigs
Cloning into 'external\xcconfigs'...
remote: Counting objects: 312, done.
remote: Compressing objects: 100% (229/229), done.
Receal 312 (delta 87), reused 306 (delta 82)
Receiving objects: 100% (312/312), 64.51 KiB | 0 bytes/s, done.
Resolving deltas: 100% (87/87), done.
于 2013-07-25T07:36:34.310 に答える