LoginSignup
4
2

More than 3 years have passed since last update.

ghq + peco + GitHub CLIでターミナルの生産性を上げたい!

Posted at

はじめに

何番煎じかはわかりませんが、有名なghq・pecoの組み合わせが汎用性ありすぎてとても便利だったので一例を記事にしてみました。

目的

今更ですがghq,peco,GitHubCLIが超便利だったので紹介します。
一例としてこんな感じでターミナルからブラウザでリポジトリを開けるようにします。
f18c1a326f1c910b0bed4ae97e0e8a40.gif

ghqとは

リポジトリ管理ツールです。
ghq get <リポジトリのURL>でghqで設定したディレクトリにgit cloneしてくれます。
さらにghq listでghqで管理しているリポジトリ一覧を一覧で出力してくれます。
詳細は作者の方のブログ公式のリポジトリを参照してください。

  • インストール例(Mac OS)

 $ brew install ghq
  • 設定例
.gitconfig
[ghq]
  root = ~/projects # gitで開発を行っているディレクトリ
  root = ~/go/src # goのリポジトリは別で管理しているという人用(一例です)

pecoとは

標準入力で渡された一覧を表示しつつ、インクリメンタルサーチでテキストを絞っていけるツールです。
もともとctrl + rでインクリメンタルサーチできると思いますが、pecoだとコマンド履歴を表示した上で絞っていけるので超便利です。
いつもありがとうございます。
詳細は公式やこちらの記事とか色んな方が紹介してくださっているのでそちらを参照してください。

  • インストール例(Mac OS)

$ brew install peco

Github CLIとは

GitHubが2020年9月に正式版を公開した、コマンドライン上でGitHubの操作を行えるツールです。
マニュアルが用意されているので使い方はこちらに載っています。

  • インストール例(Mac OS)

$ brew install gh
  • インストール後の認証

$ gh auth login

認証まで完了したらgh repo view <リポジトリ名>とかでリポジトリの内容を閲覧してみましょう。
ターミナルにREADMEの内容が出力されると思います。

実用例

ghq,peco,GitHubCLIがインストールできて準備ができたら実際に使ってみます。
エイリアスは設定しなくてもコマンド打てますが、設定しておくのがおすすめです!

対象リポジトリをブラウザでターミナルから開く

  • 以下を.zshrc(or .bashrcなど)に記載
.zshrc
# aliasはお好きなのを設定してください。
alias ghw='gh repo view -w $(ghq list | peco)
  • 設定を反映する

$ source ~/.zshrc
  • Demo こんな感じでターミナルからブラウザでリポジトリを開くことができました! f18c1a326f1c910b0bed4ae97e0e8a40.gif

番外編

以下でこんなのもあるよというのも記載しています!

.zshrc

# ghqで管理しているリポジトリにpecoで絞って移動する。
alias cdp='cd $(ghq list -p | peco)'

# ghqで管理しているリポジトリをpecoで絞ってVSCodeで開く。
alias vs='code $(ghq list -p | peco)'

# カレントディレクトリのOpenになっているPRをブラウザで開く。
alias pr='gh pr view --web'

終わりに

ghqとかpecoなどを使った組み合わせは他にもたくさん探したらでてくると思いますが、
今回はGithubCLIとの組み合わせを載せてみました。
それぞれ個別で利用してもとても便利ですね。
こんな便利なものを公開してくれている方々に本当に感謝です。
「これもええで!」みたいなのがあればぜひ教えて下さい!

参考

ありがとうございます!

4
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
2