🐙
容量が大きいリポジトリを部分的にgit cloneする方法
概要
RayCastの拡張機能を作りたいなと思い、RayCastの拡張昨日のリポジトリをクローンしようとしたのですが、容量が大きくて全然終わらないので部分的にクローンする方補を調べたのでメモとして残します。
RayCastの拡張機能のリポジトリ
方法
git clone --filter=blob:none --sparse git@github.com:raycast/extensions.git
cd extensions
git sparse-checkout init --cone
git sparse-checkout set examples images
上記のコマンドではgit sparse-checkout set
の部分でexamples
とimages
ディレクトリのみを指定してクローンしています。
ただ、この場合否定をできないみたいなので、容量が大きいextensions
ディレクトリを除外してクローンする場合は以下のようにします。
git clone --filter=blob:none --sparse git@github.com:raycast/extensions.git
cd extensions
git sparse-checkout init --no-cone
git sparse-checkout set '/*' '!extensions/'
このコマンドでは、git sparse-checkout set '/*' '!extensions/'
でextensions
ディレクトリを除外してクローンしています。
最初'/*'を指定せずに実行したのですが、この場合は何もクローンされなかったので、おそらくデフォルトでは何も対象にしていないのだと思います。
Discussion