😎
インクリメンタル検索でローカルのプロジェクトやPRを切り替える方法【1行コマンド】
対象
- GitHubのプロジェクトが霧散し、どこに何があるか毎回探すのに時間がかかる方
- GitHubのブラウザを確認せずに、PRのチェックアウトをしたい方
- ワンライナーが大好きな方
- pecoが好きな方
必要なもの
peco
これは、インクリメンタル検索をするのに使います。
ghq
これは、フォルダをリスト表示をするのに使います
GitHub CLI
これは、hubのGo再実装が公式になったNTR感ある、GitHubの公式ライブラリです。
PRやissueをCLIで確認するのに使います。
brew install peco ghq gh
ghq初期設定
ghqのrootディレクトリを以下のように設定します。
rootディレクトリは複数設定することもできます。
~/.gitconfig
[ghq]
root = ~/<GitHubのプロジェクトが存在する大元のディレクトリ>
root = ~/ghq
ローカルのGitHubプロジェクトを探す
以下を実行することで、インクリメンタルにGitHubプロジェクトを探すことができます。
私はAlfredに、このスニペットを登録し、!cdで入力されるようにしています。
rootを複数設定している場合もこちらで対応できます。
cd $(ghq list --full-path | peco)
GitHubのPRをインクリメンタルに検索しチェックアウトする
ローカルのGitHubプロジェクトがあるディレクトリで実行します。
gh pr listでPRのリストが一覧表示され、pecoでインクリメンタルに検索します。
cut -f 1 にすることで、PRの番号を切り取り、gh pr checkout <PR番号> でチェックアウトできます。
gh pr checkout $(gh pr list | peco | cut -f 1)
以上
Discussion