「ghq list」に時間がかかってた問題
ghq list
が遅くなる問題に遭遇して解決できたのでメモ。
TL;DR;
GHQ_ROOT/の下に、サンプル用コードを配置するときは、必ず.git
などでバージョンコントロールすること。
理由
ghq/local_repository.go at master · motemen/ghq · GitHub
ここを見る感じ、「.git
, .svn
, .hg
, _darcs
といったディレクトリがある場所を探索して、そこからlocal repositoryだったら、そこから下をskipする」挙動になってます。
そのため、GHQ_ROOTの下にバージョンコントロールされてないサンプルプロジェクトがあると、
その中の.bundle
やnode_modules
を再帰的に辿っていく動作になる。
結果的に、たどる必要がないパスを延々と辿ることで、不要なパスをskipせずに、ghq list
の実行時間が長くなるという状況だった。
自分でghq list
の代替を作ってたけど、やっぱりと思って調べてみて、なんとか改善できたので良かった。