ghq + peco로 GitHub 리포지토리를 선택하면서 curl + jq에서 GitHub API 실행
Github의 Pull Request에 묶는 base / head branch를 curl과 jq로 얻는다.
이번에는 ghq + peco의 리포지토리 선택을 결합하여 리포지토리를 더 쉽게 선택할 수 있도록 시도했습니다.
전제 환경
※ ghq, peco, jq 는 모두 HomeBrew 로 인스톨 할 수 있습니다.
준비 정책
아래 방침으로 준비하겠습니다.
사전 준비
GitHub 리포지토리 목록 만들기
ghq에서 Pull Request를 확인할 리포지토리를 로컬로 복제합니다.
$ ghq get <repo URL>
원라이너 준비
아래의 원라이너를 쉘 설정에 추가합니다.
제 경우에는 zsh 를 사용하고 있으므로
.zshrc
에 별칭을 등록하고 source ~/.zshrc
등으로 로드해 둡니다.alias pb='curl -sH "Authorization: token ${GITHUB_API_TOKEN}" "https://api.github.com/repos/$(ghq list | sed s#github.com\/##g | peco)/pulls" | jq ".[] | { number: .number, title: .title, base: .base.ref, head: .head.ref }"'
curl, jq 부분은 이전 기사을 답습하고 있습니다.
추가한 부분은
$(ghq list | sed s#github.com\/##g | peco)
부분에서 :owner/:repo
부분을 추출하여 증분 검색에서 선택할 수 있도록 했습니다.GITHUB_API_TOKEN
는 .zshrc
에 쓰고 싶지 않았기 때문에 다른 파일 github_credentials
로 잘라서 로드하는 형태로 했습니다.※.github_credentials 의 내용을 직접 Git 관리하지 않도록, .gitignore 로 지정해 두는 등, 주의해 주세요!
~/.github_credentials
export GITHUB_API_TOKEN=xxx
GITHUB_CREDENTIAL_FILE=~/.github_credentials
if [ -e $GITHUB_CREDENTIAL_FILE ]; then
source $GITHUB_CREDENTIAL_FILE
fi
이용방법
alias에 등록한
pb
을 실행하면,ghq로 복제한 리포지토리 목록을 증분 검색할 수 있습니다.
그런 다음 리포지토리를 선택하면 리포지토리의 풀 요청과 소스/헤드 브랜치를 볼 수 있습니다.
이번에는 facebook/react의 Pull Request 목록을 보려고했습니다.
끝에
peco + ghq 의 조합으로, GitHub APi 의 실행이 보다 편리하게 되었습니다.
이번에는 Pull Request와 관련된 API를 실행하려고 시도했지만 Issues와 같은 다른 API에도 적용 할 수 있다고 생각했습니다.
참고 URL
Reference
이 문제에 관하여(ghq + peco로 GitHub 리포지토리를 선택하면서 curl + jq에서 GitHub API 실행), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/gotchane/items/0246f40bcf8d39b93cb0텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)