ghq と peco を使い始めた
今更ながら ghq と peco を使い始めた。
きっかけは以下の記事。
これまでは ~/ruby や ~/go のようにホームディレクトリ以下で管理していたローカルリポジトリを、すべて ghq を使って ~/.ghq 以下で管理することにした。
ghq get は -p をつけないと SSH で clone してくれないので、設定ファイルにデフォルトで SSH プロトコルを選択する PR を作ろうかと思ったが、Git の url.<url>.pushInsteadOf, url.<url>.insteadOf で置き換えられることがわかったので、その問題は解決された。
参考: ghq 最近の変更とこれから - 詩と創作・思索のひろば
[url "git@github.com:"] pushInsteadOf = https://github.com insteadOf = https://github.com
ghq の導入だけだと改善した感がなかったので、一緒に紹介されている peco も導入した。これがすごかった。
リポジトリ
とりあえず Mac 環境では .zshrc に以下を追加して半日、既に以前の状態に戻れる気がしない。
alias repo='ghq list -p | peco' function editrepo() { local r r=$(repo) if [ -z "$r" ]; then return fi cd ${r} && atom ${r} }
repo コマンドで ghq で管理しているリポジトリのパスを選択して出力できる。本題は editrepo の方で、こちらは ghq で管理しているリポジトリのルートへ移動し、Atom で開く。これまで zsh の補完と履歴と手癖でこの辺の作業をなんとかこなしていた、スムーズかつ間違えにくくなった。
peco はまだまだユースケースがありそうなので、思いつき次第 .zshrc に追記していきたいところ。