dotfiles盆栽記4: Homebrew管理のGitを使うことでzsh起動を速くした

25秒から1秒に短縮された。

github.com

モチベーション

zshの初回起動が25秒かかっていて遅い。2回目以降は初回に比べてかなり速い。初回起動を速くしたい。

あたりをつける

ターミナルやzshの知識が無いので勘所が分からず悩んでいたのだが、ターミナル起動時にタイトルバーに代わる代わるコマンドが表示されていることに気がついた。おそらく実行中のコマンドが表示されているのだろう。

タイトルバー

タイトルバーにxcodebuildが表示されている時間が長かったので、今回は取っ掛かりとしてxcodebuild周りで調べていく。

Git

xcodebuild周りが遅そう、というあたりをつけたので「zsh slow xcodebuild」で適当にググるとめちゃくちゃ記事が出てきた。考えることは皆同じ。多くの記事で参照されている以下を見ると、解決方法の一つに、使用するGitをHomebrew経由でインストールしたものに変える方法が紹介されていた。そのようにしたら起動時間が25秒から1秒になった。

blog.smittytone.net

# 変更前(MacプリセットのGit)
> which git
/usr/bin/git

> /usr/bin/git --version   # この実行に25秒かかった(PC起動してからの初回のみ)
git version 2.37.0 (Apple Git-136)

# 変更後(Homebrew経由でインストールしたGit)
> which git
/usr/local/bin/git

> /usr/local/bin/git --version  # 1秒未満で実行された
git version 2.37.3

原因が気になるところだが究明に時間がかかりそうで手を付けていない。上記から分かることは、Apple GitがHomebrew経由で落としたGitとは異なりxcodebuildで何らかの処理を行っていそう、それが遅い。

参考