Notice
Recent Posts
Recent Comments
Link
- Today
- Total
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 책리뷰
- 일본어기초
- GIT
- 진짜학습지
- Android
- Kotlin
- n3문법
- ai
- coroutine
- 진짜학습지후기
- github
- PR
- 코틀린
- errorhandling
- blog
- CustomTab
- suspend
- 인공지능
- 진짜일본어
- androidstudio
- 일본어문법
- rxjava
- KotlinInAction
- pullrequest
- 안드로이드
- posting
- 학습지
- 책추천
- webflux
- jlpt
Archives
코딩하는 개굴이
[Git] Pull Request 를 Git 에 끌어오자! 본문
반응형
작업 시에, 만일 클론한 개인 레포에서 작업을 하고 Upstream 으로 PR 을 올리는 방식을 팀에서 사용하는 경우
PR 이 별도로 설정하지 않으면 Opensource/GitKraken 등에 뜨지 않는 현상이 보일 것이다.
이런 경우, 타인의 레포로 직접 가서 clone 할 수도 있겠지만 매번 그러기 번거롭기 그지없다.
따라서, Upstream 의 PR 을 끌어오는 명령어를 알아보도록 하자.
특정 PR 을 끌어오자
우리가 가져오고자 하는 PR 이 148번이라고 가정하자.
특정 PR 이 몇번인지는 아래와 같이 PR 에 들어가 우측의 # 이후에 적힌 번호로 알 수 있다.
이 번호를 가지고 아래 명령어를 입력하자.
git fetch -fu upstream refs/pull/148/head:pr/148
git checkout pr/148
첫번째 명령어는 upstream 에서 pr 브랜치를 끌어오는 것이고, 두번째 명령어는 해당 pr 로 checkout 하는 것이다.
이렇게 매번 입력할 수도 있지만 더 쉽게 사용할 수 있는 방법이 있다.
설정을 쉽게 쓸 수 있도록 지정하자
위 명령어들을 별칭으로 만들어 쉽게 사용할 수도 있다.
본인의 경우는 적용하다가 실수로 모든 pr 을 끌어오게 되어, 수많은 pr 들로 인해 GitKraken 이 고장난 이력이 존재하여 뻘짓을 한번 크게 하였다. 주의가 필요하다. |
우선 gitconfig 로 이동하도록 하자.
vi ~/.gitconfig
그러면 아래와 같이 나올텐데, 우리는 alias 하위에 아래와 같이 내용을 적을 것이다.
[alias]
pr = "!f() { git fetch -fu ${2:-upstream} 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"
pr 별칭은 upstream 에서 가져오고 해당 브랜치로 체크아웃 해주는 명령어들이다.
pr-clean 의 경우, pr/number 형태의 브랜치들을 지워주는 별칭이다. 이후, :wq! 로 저장해주면 된다.
이제, 우리는 아래와 같이 쉽게 사용할 수 있게 되었다.
//PR 가져오기
$ git pr 94
remote: Counting objects: 6, done.
remote: Total 6 (delta 3), reused 3 (delta 3), pack-reused 3
Unpacking objects: 100% (6/6), done.
From github.com:username/project-name
* [new ref] refs/pull/94/head -> pr/94
Switched to branch 'pr/94'
//PR 브랜치 삭제하기
$ git pr-clean
Deleted branch pr/94 (was 8dae336).
Deleted branch pr/112 (was 97abd00).
별칭도 세팅했으니, 편하고 꼼꼼하게 PR 리뷰를 해보도록 하자!
참고 링크
반응형
'GIT' 카테고리의 다른 글
[Git 이해하기] Git 이 관리하는 방법 (0) | 2023.07.16 |
---|---|
LFS 를 적용해보자! (feat. Trouble Shooting) (1) | 2023.07.14 |
Comments