## 事象 `cargo add`コマンドを実行すると`Updating crates.io.index`が非常に遅く、いつまでたっても[[クレート]]が追加されない。 ## 原因 `cargo add`コマンドのindex更新は、[[gitプロトコル]]を使って[[Cargo]]全体のリポジトリをcloneしているため遅くなっている。 ## 解決方法 [[Rust 1.68]]以上にバージョンアップしたうえで、[[config.toml]]に以下を追加する。 ```toml [registries.crates-io] protocol = "sparse" ``` [[gitプロトコル]]ではなく[[sparseプロトコル]]を使うことで、[[Cargo]]全体のリポジトリをcloneせず、関連するindexファイルだけを取得できるようになり、一瞬で終わる。 ## 参考 - [Resolving deltas takes long time · Issue \#11014 · rust\-lang/cargo](https://github.com/rust-lang/cargo/issues/11014)