むかーし以下の記事で git status が遅かったのが submodule 巡回のせいだったので ignoreSubmodule=dirty で改善したよって記事(※)を書いたのですが、Git 2.37.0 で追加された FSMonitor で速度が大幅改善するそうです。
「ブログズミ: git gc --aggressive するそのまえに」
「Improve Git monorepo performance with a file system monitor | The GitHub Blog」
core.fsmonitor と core. untrackedcache を true にすると FSMonitor が有効になり、git status が爆速になるらしい。
試してみたところたしかに速くなってました。9秒だったのが2秒くらい。
(初回はキャッシュ構築するので今まで変わらない速度、2回目以降速くなる)
ちなみに git status --ignore-submodule=dirty だと 0.1秒くらいです。。
まぁこのへんはどんな repository なのかやマシン環境で違うとは思いますが、FSMonitor でたしかに速くなってたので有効にしておきたいと思います。
では。
※自分のブログに書いたほうは、パフォーマンス情報を出力してなんで git コマンドが遅いのか調べて解決しようねって内容で、ignoreSubmodule=dirty の話はおまけではある。
0 件のコメント:
コメントを投稿