1

リモートのgitリポジトリから2つのフォルダのみをダウンロードしたい。この場合は、ubuntuカーネルのgitリポジトリです。
2つのフォルダだけが必要な場合、すべてのカーネルをダウンロードするのは時間と帯域幅の無駄です。
gitでこれを行う方法はありますか?

4

3 に答える 3

2

いいえ、あなたが求めている方法ではありません。ただし、次のいずれかを実行できます。

  1. tarballをダウンロードします-リポジトリのweb-uiはそのようなオプションを提供する必要があります。そうでない場合は、使用できますgit archivemanページ、google、SOがその使用法を支援します)。また
  2. --depthスイッチを使用して、浅いクローンを作成します。これにより、指定された数のコミットのみがダウンロードされるため、履歴全体を取得することはできません。git cloneマンページには、それに関する詳細があります。
于 2013-01-25T17:14:05.423 に答える
1

いいえ、部分的なクローンを作成することはできません

于 2013-01-25T17:18:13.863 に答える
1

Gitはこれを実装できないようです。

「スパースチェックアウト」は機能すると思いましたが、@HolgerJustが言ったように:

これにより、完全なリモートリポジトリがダウンロードされます。すべてのファイルを作業コピーにチェックアウトするわけではありませんが、ローカルインデックスで引き続き使用できます。

彼は正しい。


はい、できます。スパースチェックアウトを使用できます。

簡単な例を次に示します。

$ mkdir destinationFolder
$ cd destinationFolder
$ git init
$ git remote add origin git@github.com:Kjuly/iPokeMon.git
$ git config core.sparseCheckout true
$ echo 'Pokemon/Models/*' > .git/info/sparse-checkout
... echo more if you need
$ git pull origin dev

そして最後に、ファイルを取得します。

destinationFolder-
ポケモン
--モデル

于 2013-01-25T17:29:05.313 に答える