はじめに

GitHubのリポジトリが徐々にふえてきて、PCが散らかってきた。Privateのリポジトリも含めたら30個以上になっている。ちゃんと整理してクローンすればよいのだが、いかんせん整理整頓は適当なのでしょうがない。と思っていたら、ローカルリポジトリをきれいに並べるツールがあるようだった。

リポジトリ多すぎてとっ散らかる問題をghqで解決!

こんなドンピシャな記事があるものだろうか。単純にgit cloneの代わりにghq getを使えばディレクトリを勝手に整理整頓して管理してくれるらしい。

fzfとの連携

記事にも書いてあるが、fzfと連携すると非常に便利。

gq() {
  local target=$(ghq list -p | fzf)
  if [ -n "$target" ]; then
    cd "$target"
  fi
}

これは単純なロジックの割に便利なので、Yazi上でもやりたいところ。しかし先行プラグインは検索しても見つからない。

プラグインを自作する

luaは全然わからないが、ロジックが滅茶苦茶単純な上にbunny、zoxideなどのfzf連携プラグインのソースコードが公開されているので、それをもとにClaude Codeと相談しながら作った。

repository

できた。いかんせんやりたいことがシンプルなので、すぐにできた。

おわりに

ghqはあるとちょっと嬉しいツール。サブモジュールまでは上手くできないっぽい。