内容
本記事ではGithub(実際はgitリポジトリならどこでも)で特定のフォルダのみをcloneする
厳密にはcloneではないが、、、
0. clone先のディレクトリ作成
# ディレクトリ作成
$ mkdir hoge
$ cd hoge
1. git初期化
# git初期化
$ git init
2. origin追加
# origin追加
$ git remote add origin piyo.git
3. sparce-checkout有効化
# sparce-checkout有効化
$ git config core.sparsecheckout true
4. sparse-checkout対象の設定
# sparse-checkout対象の設定
# sub_dir 部分はリポジトリのルートからの相対パス
# repository_root/sub_dir/subsub_dir/...のリポジトリツリーにおいて、sub_dirフォルダのみcloneしたい場合は、以下のように設定
$ echo sub_dir > .git/info/sparse-checkout
5. sparse-checkout対象の設定
# sparse-checkout対象の設定
# sub_dir 部分はリポジトリのルートからの相対パス
# repository_root/sub_dir/subsub_dir/...のリポジトリツリーにおいて、sub_dirフォルダのみcloneしたい場合は、以下のように設定
$ echo sub_dir > .git/info/sparse-checkout
5. originをpull
# originをpull
$ git pull origin master
以上
p.s. 少しググると、上記のやり方は古く新しいやり方があるそう・・・