[1] 원격 pr브랜치 로컬로 가져오기 (설정없이 가능)[2] git fetch origin 했을 때 pr까지 다 가져오기2-1) .git/config 파일에 한줄 추가하기 ( 한번만 설정하면 됨 )2-2) $ git fetch origin2-3) $ git checkout -t origin/pr/158[3] git pr <PR번호>로 체크아웃 하기 (추천).gitconfig 파일 수정테스트[3] gh cli 이용하기
[1] 원격 pr브랜치 로컬로 가져오기 (설정없이 가능)
아래 명령어 예시는 원격의
pull/110/head
를 pull 받아서 로컬의 pr-100
브랜치로 만드는 것이다.$ git pull origin pull/110/head:pr-110 From github.com:username/project-name * [new ref] refs/pull/110/head -> pr-110
[2] git fetch origin 했을 때 pr까지 다 가져오기
2-1) .git/config 파일에 한줄 추가하기 ( 한번만 설정하면 됨 )
<프로젝트루트>/.git/config 파일 열기
[remote “origin”]의 url 하단에 fetch 구문 한줄 추가 후 저장
fetch = +refs/pull/*/head:refs/remotes/origin/pr/*

2-2) $ git fetch origin
remote origin의 레퍼런스들을 불러옴
$ git fetch origin
2-3) $ git checkout -t origin/pr/158
체크아웃 하고싶은 pr번호로 체크아웃하기
# git checkout -t origin/pr/<pr번호> $ git checkout -t origin/pr/158
이후에는 2-2)와 2-3)만 이용해서 pr 브랜치로 체크아웃하면 된다.
[3] git pr <PR번호>
로 체크아웃 하기 (추천)
PR 올라온 것을 로컬에서 테스트해 보고 싶을 때 용이하다.
특히 프론트의 경우에는 View도 같이 봐야하므로 매우 편리함.
$git pr <pr번호>
# 원격의 pr브랜치를 가져와서 로컬에pr/<pr번호>
브랜치로 만든 후 checkout까지 함.
$git pr-clean
# pr브랜치를 삭제해줌
위 두가지 명령어를 가능하게 도와주는 설정을 진행한다.
.gitconfig 파일 수정
전역 설정 :~/.gitconfig
이 프로젝트에만 적용 :<프로젝트경로>/.git/config
# 아래 3줄을 추가함. [alias] pr = "!f() { git fetch -fu ${2:-origin} refs/pull/$1/head:pr/$1 && git checkout pr/$1; }; f" pr-clean = "!git for-each-ref refs/heads/pr/* --format='%(refname)' | while read ref ; do branch=${ref#refs/heads/} ; git branch -D $branch ; done"

테스트


[3] gh cli 이용하기
# gh pr checkout <PR넘버> $ gh pr checkout 711
